我看书的时候有点没看明白,除了觉得静态方法不用该类的对象调用,可以由类本身调用。其他的区别在哪里?
能不能帮我从本质上讲讲,再帮忙举个一针见血的小例子。谢谢!!!
能不能帮我从本质上讲讲,再帮忙举个一针见血的小例子。谢谢!!!
解决方案 »
- 如何将一个大约1.5g的文件读入内存。
- 大家帮我看看这个小段代码的问题
- 如何将一个string添加到一个byte数组中?
- 用JAVA做个售票系统,要用到哪些知识点啊,望高手指点一下
- 写一个java程序,实现对一个二维数组按指定的列集进行排序?要求实现类似sql中order by的功能,移动时,整行移动,不能打乱整行顺序。
- 打开一个模态JDialog,怎么才让父窗体在dialog关闭后才得到其返回值
- 字符串数组负值问题!!!
- session取得用户名问题
- 有没有办法加快Java数据库应用client端的数据显示呢?
- Java怎样访问COM/ActiveX
- Java怎样实现图片跟随窗口的大小而变动?
- 文件的随机访问的菜鸟级问题!
这个是static初始化的原理.
当某个类的静态方法/静态字段首次被访问时,java解释器必须查找类路径,以定位.class文件.
static int classpar;
int instancepar;
static void setClassPar(int i){
classpar=i;
}
void setInstancePar(int i){
instancepar=i;
}
static int getClassPar(){
return classpar;
}
int getInstancePar(){
return instancepar;
}
}
public class mainClass{
public static void main(String args[]){
SubClass obj1=new SubClass();
SubClass obj2=new SubClass();
obj1.setClassPar(3);
obj2.setClassPar(7);
obj1.setInstancePar(5);
obj2.setInstancePar(6);
System.out.println("obj1.classPar:"+obj1.getClassPar());
System.out.println("obj2.classPar:"+obj2.getClassPar());
System.out.println("obj1.instancePar:"+obj1.getInstancePar());
System.out.println("obj2.instancePar:"+obj2.getInstancePar());
}
}执行结果:
obj1.classPar:7
obj2.classPar:7
obj1.instancePar:5
obj2.instancePar:6