|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在1995年5月23日以“Java”的名称正式发布了。
1.关头字static(先记着这些,再往下看)
1)静态办法和静态变量是属于某一个类,而不属于类的对象。
2)静态办法和静态变量的援用间接经由过程类名援用。
3)在静态办法中不克不及挪用非静态的办法和援用非静态的成员变量。反之,则能够。
4)静态变量在某种程序上与其他言语的全局变量相相似,假如不是公有的就能够在类的内部举行会见。
2.什么时候利用static
在我们创立一个类的实例时(对象),一般利用new办法,如许这个类的数据空间才会被创立,其办法才干被挪用。
可是,偶然候我们但愿一个类固然能够被创立n个对象(明显这n个对象的数据空间是不不异的),但这n个对象的某些数据是不异的,即不论这个类有几的实例,这些数据对这些实例而言之有一分内存拷贝(见教例1)。这是静态变量的情况。
另外一种情况是,你但愿某个办法不与包括它的类的任何对象联系关系在一同。也就是说,即便没有创立对象,也可以挪用这个办法。static办法的一个主要用法就是在不创立任何对象的条件下,就能够挪用它(见教例2)。这是静态办法的情况。
另有一种特别的用法呈现在外部类中,一般一个一般类不同意声明为静态的,只要一个外部类才能够。这时候这个声明为静态的外部类能够间接作为一个一般类来利用,而不需实例一个内部类(见教例3)。这是静态类的情况。
示例1
publicclassTStatic{
staticinti;
publicTStatic(){
i=4;
}
publicTStatic(intj){
i=j;
}
publicstaticvoidmain(Stringargs[]){
System.out.println(TStatic.i);
TStatict=newTStatic(5);//声明对象援用,并实例化。此时i=5
System.out.println(t.i);
TStatictt=newTStatic();//声明对象援用,并实例化。此时i=4
System.out.println(t.i);
System.out.println(tt.i);
System.out.println(t.i);
}
}
了局:
0
5
4
4
4
<p>
多谢指点,其实我对.net和ruby也不是很了解,对与java也只是刚起步的阶段,只是在学习中有了点想法就写出来了,现在俺本科还没毕业,所以对大型项目基本上也没有什么经验。 |
|