这个网站上有很多关于这个的问题。我浏览了所有这些问题以及互联网,但没有找到解决我的特定问题的方法(或者无法看到它们与它的关系)。此外,这里可能独一无二的是,这是一个特定于 java 的问题,它不适用于 c#。我在这里做了一些非常简单的事情(在java中),创建一个像这样的类 -
public class asdf{
public int aa;
public int bb;
public asdf(int i,int j){
aa=i;
bb=j;
}
}
现在我尝试从另一个类的主要方法实例化它 -
asdf aaaa = new asdf(1,2);
这是测试类中的完整代码 -
public class test2 {
public class asdf{
public int aa;
public int bb;
public asdf(int i,int j){
aa=i;
bb=j;
}
}
public static void main(String[] args){
asdf aaaa = new asdf(1,2);
}
}
这一行给了我错误-不能从静态上下文中引用非静态变量。什么是静态的?主要方法在一个非静态的类中,所有变量都不是静态的,我正在创建一个实例。所以有什么问题?另请注意,这在 C# 中运行良好。所以,它似乎是 Java 特有的东西。