final修饰类:当一个类被final所修饰时,表示该类是一个终态类,即不能被继承。
public class FinalTest {
public static void main(String[] args) {
}
}
final class E {
}
class F extends E {
}
final修饰方法:当一个方法被final所修饰时,表示该方法是一个终态方法,即不能被重写(Override)
public class FinalTest2 {
public static void main(String[] args) {
H h = new H();
h.output();
}
}
class G {
public final void output() {
System.out.println("G");
}
}
class H extends G {
public void output() {
System.out.println("H");
}
}
final修饰属性:当一个属性被final所修饰时,表示该属性不能被改写
public class FinalTest3{
public static void main(String[] args){
People people = new People();
// people.age = 20;
people.address = new Address();
}
}
class People{
//final int age = 10;
final Address address = new Address();
}
class Address{
String name = "Beijing";
}
没有修改final对象,只是修改对象的内容
public class FinalTest3 {
public static void main(String[] args) {
People people = new People();
// people.age = 20;
// people.address = new Address();
people.address.name = "shanghai";
}
}
class People {
//final int age = 10;
final Address address = new Address();
}
class Address {
String name = "Beijing";
}