java修饰符

来源:互联网 发布:淘宝靠谱的宠物店 编辑:程序博客网 时间:2024/06/05 19:32

Static

在java中,我们不能用static修饰顶级类(top level class)。只有内部类可以为static。

静态内部类和非静态内部类之间到底有什么不同呢?下面是两者间主要的不同。

    (1)内部静态类不需要有指向外部类的引用。但非静态内部类需要持有对外部类的引用。

    (2)非静态内部类能够访问外部类的静态和非静态成员。静态类不能访问外部类的非静态成员。他只能访问外部类的静态成员。

    (3)一个非静态内部类不能脱离外部类实体被创建,一个非静态内部类可以访问外部类的数据和方法,因为他就在外部类里面。

final

修饰变量:

宏替换:对一个final变量来说,不管它是类变量,实例变量,还是局部变量,只要该变量满足三个条件,这个final变量就不再是一个变量,而是相当于一个直接量。
  1. 使用final修饰符修饰
  2. 在定义该变量时指定了初始值
  3. 该编译值在编译时就被确定下来

0 0