它不起作用,因为您是在无效的Java语法的构造函数或方法之外定义实例的。
可能的解决办法是:
class SomeVariables {
String s;
int dontneed;
}
class MainClass {
public static void main(String[]args){
SomeVariables vars = new SomeVariables();
vars.s = "why this doesnt work?. IDE says UkNown class 'vars.s'";
System.out.println(vars.s);
}
}
但是您可能要考虑保护您的类变量,例如使所有属性成为SomeVariables
并使用setters
和getters
方法来获取和修改类本身中的值。例如:
class SomeVariables {
private String s;
private int dontneed;
// Constructor method
public SomeVariables() {
// Initialize your attributes
}
public String getValue() {
return s;
}
public void setValue(String value) {
s = value;
}
}
class MainClass {
public static void main(String[]args){
SomeVariables vars = new SomeVariables();
vars.setValue("Some value");
System.out.println(vars.getValue());
}
}