我可以使用以下代码吗?它不会在Object处抛出任何错误,而是在obj.i.这是使用对象的合法方式吗?另外,除了使用普通语法obj s = new obj();
之外,我可以创建多少种方法。public class Test {
static int i;
static Test obj;
obj.i = 10; //am getting a compilation error here "Syntax error on token "i", VariableDeclaratorId expected after this token"
public static void main(String[] args) {
System.out.println(i+" "+ obj);
}
}
答案 0 :(得分:0)
您需要在obj.i赋值语句周围放置一个静态块才能使其正常工作:
public class Test {
static int i;
static Test obj;
static { obj.i = 10; }
public static void main(String[] args) {
System.out.println(i+" "+ obj);
}
}
答案 1 :(得分:0)
这不是,你没有初始化。此外,您可能不想使用static
。
public static void main(String [] args) {
int i = 10;
Test obj = new Test();
obj.setI(i);
System.out.println("my objects I = "+ obj.getI());
}
现在位于Test
对象
public class Test {
private int i;
public void setI(int i) {
this.i = i;
}
public int getI() {
return this.i;
}
}