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

时间:2023-01-08 19:37:45
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并未提供任何使对象恒定不变的途径. 这一限制同样适用数组,它也是对象. 4.编译期常量参见[url]http://chihom.javaeye.com/blog/233035[/url]

5 .本来还想分析几个例子,见这位仁兄已经分析得很不错了: [url]http://zhangjunhd.blog.51cto.com/113473/20664[/url]

本文出自 “青山” 博客,请务必保留此出处http://java999.blog.51cto.com/259217/137465