static,final,static final的区别

来源:互联网 发布:windows 错误恢复 编辑:程序博客网 时间:2024/05/20 05:26
1.使用范围:类、方法、变量。


2.区别和联系:


2.1.static 含义:静态的,被 static 修饰的方法和属性只属于类不属于类的任何对象。
2.2.static 用法:
2.2.1.static 可以修饰【内部类】、方法和成员变量。
2.2.2.static【不可以修饰外部类】、【不可以修饰局部变量】(因为 static 本身就是定义为类级别的,所以局部级别的变量是不可以用 static 修饰的)。


2.3 final 含义:【只能赋值一次】的。
2.2.final 用法:
2.2.1.final 修饰属性,表示属性【只能赋值一次】,(1)基本类型:值不能被修改;(2)引用类型:引用不可以被修改该。
2.2.2.final 修饰方法,表示方法不可以重写,但是可以被子类访问(如果方法不是 private 类型话)。
2.2.2.final 修饰类,表示类不可以被继承。


3.联合使用 static final
3.1.适用范围:


3.1.2.两者范围的交集,所以只能修饰:成员变量、方法、内部类。


3.2.含义:也是二者交集:
3.2.1.方法:属于类的方法且不可以被重写。
3.2.2.成员变量:属于类的变量且只能赋值一次。

3.2.3.内部类:属于外部类,且不能被继承


final被修饰的变量为常量一旦赋值不能修改,被修改的方法为最终方法不能被重写,被修饰的类是最终类,不能被继承
static被修饰的变量和方法,为该整个类及其类的对象所共享,一个类或对象修改了被定义的类或方法,其他的也会跟着变量。。这就是说被static修饰的是大家共用的。

0 0