为了账号安全,请及时绑定邮箱和手机立即绑定

静态类里面普通成员怎么调用

静态类,静态成员,才可以        Class.name      这样,那么静态类,普通成员怎么调用,求解

正在回答

1 回答

public class Solve {
	static class A{
		int b = 2;
		static int c =3;
	}
	public static void main(String[] args) {
		int x = A.c;
		System.out.println(x);//3
		A a= new A();
		System.out.println(a.b);//2
	}

}

我们知道静态类中的静态成员,可以直接以Class.name去直接调用,为什么呢?因为static修饰的类和成员 或者是方法 在编译时已经存在于内存中,而你看那个int b=2;并没有被static修饰,那么说明编译时它压根就不存在,是一个不存在的成员。那怎么让它出现在内存中呢?我们得实例化一个Class A,这样b就存在于这个实例化的class之中,就可以class.name来调用了

1 回复 有任何疑惑可以回复我~
#1

willkill 提问者

不能直接用吗,像A.b 或者A.this.b这样
2015-07-09 回复 有任何疑惑可以回复我~
#2

willkill 提问者

非常感谢!
2015-07-09 回复 有任何疑惑可以回复我~
#3

Fallbuster 回复 willkill 提问者

不能,因为一上来就A.b或者A.this.b会出错,虽然定义了,但是调用的时候A中还没有b这个成员。
2015-07-09 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

静态类里面普通成员怎么调用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信