且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

java 编程思想笔记之static 和 final 关键字

更新时间:2022-09-16 21:13:15

Static关键字:只用一个存储区域来保存一个特定的静态数据——无论要创建多少个对象,甚至根本不创建对象。可以通过类本身来调用static方法,这是static的主要用途。在static内部不能调用非静态方法。
StaticTest.java
public class StaticTest {
    private static int i =99;
   
    private static int test(int j){
       return ++j;
    }
    public static void main(String[] args){
       int j = 0;
       StaticTest s1 = new StaticTest();
       s1.i++;
       StaticTest.i++;
       System.out.println(StaticTest.i);//101
      
       s1.test(j);
       System.out.println(StaticTest.test(j));//1,不是2,因为值传递
    }
}
 
Final关键字:1Java中声明属性、方法和类时,可使用关键字final来修饰。final变量即为常量,只能赋值一次;final方法不能被子类重写;final类不能被继承。在对final变量进行定义的时候,必须对其进行初始化。
2A field that is both static and final has only one piece of storage that cannot be changed.
3对于原始类型,final使数值恒定不变,而对于对象引用,final使引用恒定不变一旦引用被初始化指向一个对象,就无法对他进行改变以指向另一个对象然而,对象其自身却是可以修改的,Java并未提供任何使对象恒定不变的途径这一限制同样适用数组,它也是对象.
5.本来还想分析几个例子,见这位仁兄已经分析得很不错了:[url]http://zhangjunhd.blog.51cto.com/113473/20664[/url]









本文转自 yzzh9 51CTO博客,原文链接:http://blog.51cto.com/java999/137465,如需转载请自行联系原作者