二、Final
核心:一旦创建,不可修改
可修饰:(创建即终态)
1.类:被修饰后,将不能被继承
2.方法:被修饰后,将不能被覆写
3.属性:被创建,不可修改,且必须赋值(赋值的两种形式):
1.直接
2.构造函数赋值
ps:
a 、可与static一起修饰属性和方法
b、修饰原生类型时是确定其值不变,引用类型时是其引用地址不可更改
三、Abstract
package com.jacob.javase;
/*
* 修饰符:
* Abstract:
* 核心:只创建不实现,由子类实现
* 1.类
* 2.方法
*/
public class ModifierAbstract {
// Cannot instantiate the type Tree
// 抽象类必须由子类实例化或者对对象中的方法覆写
// 1.2.1:
Tree a = new Tree() {
@Override
public void test() {
// TODO Auto-generated method stub
}
};
// 1.2.2:
Tree b = new BigTree();
}
// 1.抽象类
// 1.1 不能和final限定修饰符一起使用
abstract class Tree {
// 2.抽象方法
// 2.1抽象方法只存在于抽象类中
// 2.2没有方法块,只能通过子类的覆写来进行完善
// 2.3 抽象方法只能使用一个可见的限定修饰符
public abstract void test();
}
class BigTree extends Tree {
// 2.3其子类必须覆写抽象父类中的方法
public void test() {
System.out.print("覆写抽象父类的方法");
}
}