static_续

2011-05-09  12:47:49

程序如下:

 

程序开始只有公共类和P类;类P有一个静态代码块,一个构造函数;输出结果为:static block  p constractor;

解释:静态代码块是在编译时,类被加载进JVM时,静态代码块也随之被加载,且只加载一次;即如果在主函数再生成一个P对象,输出结果当为static block p constractor p constractor;

 

继续扩展:当有Q类继承P时,R继承Q类; 在主函数中new 一个R类对象,且Q和R类各自有自己的静态代码块和构造函数; 同上道理;

则静态代码块随类加载且只被加载一次,可以预料输出结果为:P static Q static R static P constractor Q constractor R constractor   ;若在主函数生成两个R类对象呢?  则输出结果为:。。。?

由以上可推出: 不能在静态方法中访问静态变量;静态方法中不能用this;

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭