欢迎来到天天文库
浏览记录
ID:50826690
大小:35.09 KB
页数:4页
时间:2020-03-15
《Java中的静态变量静态方法静态块与静态类.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java中的静态变量、静态方法、静态块与静态类在Java中,static是一个关键字,我们不能用它来作为类名或包名,static主要有四种用途,即作为静态变量、静态方法、静态块和静态类。1、静态变量Javastaticvariables静态变量就是类变量,它并不属于类的实例,仅属于类本身。在所有能访问该类的地方,也就可能访问或修改该变量,它是非线程安全的,因此,静态变量通常是和final关键字结合在一起,用来标识该变量是一个公共资源和常量。只要静态变量不是private私有的,那么我们可通过ClassName.variableName的方式
2、进行访问。//staticvariableexampleprivatestaticintcount;publicstaticStringstr;publicstaticfinalStringDB_USER="myuser";2、静态方法Javastaticmethods静态方法与静态变量一样,也是属于类本身而不属于类的实例对象。在一个静态方法中,除了局部变量外,它能访问的外部变量也必须是静态的,能访问的外部方法也必须是静态的,实例变量和实例方法均不能访问。在绝大多数情况下,静态方法通常是public的,作为工具类的工具方法出现。//stat
3、icmethodexamplepublicstaticvoidsetCount(intcount){ if(count>0) StaticExample.count=count;} //staticutilmethodpublicstaticintaddInts(inti,int...js){ intsum=i; for(intx:js)sum+=x; returnsum;}3、静态块JavastaticBlock静态块是由一些语句组成的段落,它在类被加载进内存时执行,且无论类被使用多少次它都只会执行一次。一个
4、类的静态块可以有多个,其执行顺序由它在代码中的顺序决定。在静态块中,我们通常进行一些需要进行异常捕获的静态变量的初始化。static{ //canbeusedtoinitializeresourceswhenclassisloaded System.out.println("StaticExamplestaticblock"); //canaccessonlystaticvariablesandmethods str="Test"; setCount(2);}4、静态类Javastaticmethods静态类都
5、是内部类,static不能用于修饰顶级的类。对于单例模式用静态类来实现就是一个很不错的选择。5、完整示例packagecom.journaldev.misc; publicclassStaticExample{ //staticblock static{ //canbeusedtoinitializeresourceswhenclassisloaded System.out.println("StaticExamplestaticblock"); //canaccessonlystat
6、icvariablesandmethods str="Test"; setCount(2); } //multiplestaticblocksinsameclass static{ System.out.println("StaticExamplestaticblock2"); } //staticvariableexample privatestaticintcount;//keptprivatetocontrolit'svaluethrou
7、ghsetter publicstaticStringstr; publicintgetCount(){ returncount; } //staticmethodexample publicstaticvoidsetCount(intcount){ if(count>0) StaticExample.count=count; } //staticutilmethod publicstaticintaddInts(inti,int
8、...js){ intsum=i; for(intx:js)sum+=x; returnsum; } //staticcl
此文档下载收益归作者所有