final修饰符:
1.修饰变量,被修饰的变量不可改变,并且在定义变量时就要给出初始值。
final 类型 变量名;
2.修饰方法:被修饰的方法不能被子类重写
final 返回类型 方法名(参数)
{
......;
}
3.修饰类:被修饰的类不能被继承
final class 类名
{
......;
}
static修饰符:
声明方式:
修饰类变量:static 类型 变量名;
修饰类方法:static 返回类型 方法名(参数)
{
......;
}
用static修饰的变量和方法称为类变量(静态变量)和类方法(静态方法),没有用static修饰的变量和方法被称为实例变量和实例方法
1.类方法中不可以访问实例变量,只能访问类变量,实例方法中,既可以访问类变量,也可以访问实例变量。
2.调用静态方法时,可以不用实例化,直接用 类名.方法名() 的方式直接调用。
3.类方法中,不能出现this或super关键字。
abstract修饰符:
声明方式:
修饰类: abstract class 类名
{
.......;
}
修饰方法:abstract 方法();
用abstract修饰符修饰的类称为抽象类,用abstract修饰的方法称为抽象方法
1.抽象类不能被实例化,但是可以被继承
2.如果一个类中有抽象方法,则这个类必须是抽象类。
3.抽象类中的抽象方法是只有方法声明,没有代码实现的空方法(没有方法体)
4.由于抽象方法都是没有完成代码实现的空方法,因此抽象类的子类必须重写父类定义的每一个抽象方法。