目录
抽象类的定义和使用:
定义:
-
抽象类只是在普通类的基础上扩充一些抽象方法而已,所谓的抽象方法指的是只声明而未实现的方法----用abstract关键字定义
使用原则:
- 1.抽象类必须要有子类
- 2.抽象类中如果有抽象方法,抽象方法没有方法体,子类必须复写所有的抽象方法
- 3.抽象类的对象可以通过对象多态性利用子类为其实例化
- 4.finall,private,static和abstract不能够同时使用
扩展:
为什么finall,private,static和abstract不能够同时使用?
- 被private修饰后为私有,子类不能继承,而abstract必须要有子类,所以不能同时使用
- 被final修饰的类不能有子类 ,自然不能同时使用
- static修饰的是静态方法,可以直接被类调用;而abstract修饰的类中只有方法名,无方法体,不能被直接调用,故不能同时修饰一个类或方法
//定义一个抽象类
abstract class Family {
private int num;//属性
public void setNum(int num)
{
this.num=num;
}
public int getNum()
{
return num;
}
//抽象方法-----所有抽象方法都不包括方法体
abstract public void print();
}
class Person3 extends Family{
public void print()
{
System.out.println("子类继承抽象类");
}
}
public class 抽象类 {
public static void main(String[] args) {
//实例化子类,向上转型
Family f=new Person3();
f.print();
}
}
结果: