final:最终的,可以用来修饰类、属性、方法
1. final修饰类:这个类就不能被继承。如:String类、StringBuffer类、System类
2. final修饰方法:不能被重写。如:Object类的getClass()方法 表示该方法的用法是明确的,子类没必要重写的
3. final修饰属性:此属性就是一个常量,一旦初始化后,不可再被赋值。习惯上,常量用大写字符表示。如:Math.PI
> 此常量在哪里赋值:1.此常量不能使用默认初始化 2.可以显式的赋值、代码块、构造器.
变量用static final修饰:全局常量 ( tips: final与finally finalize()区分开 )
代码示例:
public class TestFinal {
public static void main(String[] args) {
C c = new C();
System.out.println(c.getClass());
System.out.println(Math.PI);
}
}
class D {
final int I = 12;
final double PI;
final String NAME;
public void m1() {
System.out.println(I);
// I = 10; 不可以
}
{
PI = 3.14;
}
public D() {
NAME = "DD";
}
public D(String name) {
this();
// NAME = name;
}
}
//class SubString extends String{
//
//}
final class A {
}
//class B extends A{
//
//}
class C {
public final void method1() {
System.out.println("method1");
}
}
//class E extends C{
// @Override
// public void method1() {
// System.out.println(".........");
// }
//}
本文详细解析了final关键字在Java中的应用,包括final修饰类、方法及属性的不同含义与限制,并通过示例代码进行了具体说明。
489

被折叠的 条评论
为什么被折叠?



