抽象类与抽象方法
抽象方法
使用abstract修饰的方法,没有方法体,只有方法的声明。定义的是一种“规范”。要求子类必须实现父类定义的抽象方法。
抽象类
使用abstract 修饰的类。通过abstract方法定义规范,然后要求子类必须定义具体实现。通过抽象类,我们可以严格限制子类的设计,使得子类之间更加通用。
抽象类与抽象方法代码如下:
public abstract class Animal {
//定义speak 这个抽象方法 子类必须实现这个方法
public abstract void speaking();
//定义普通方法
public void happy(){
System.out.println("i am happy");
}
}
class Dog extends Animal{
//实现Animal定义的抽象方法
@Override
public void speaking() {
System.out.println("汪汪汪...");
}
}
class Cat extends Animal{
//实现Animal定义的抽象方法
@Override
public void speaking() {
System.out.println("喵喵喵...");
}
}
总结:
1、有抽象方法的类 一定是抽象类 ;抽象类中不一定有抽象方法
2、抽象方法不能被实例化 ,也就是不能 new抽象类
3、抽象类可以有 属性、普通方法、抽象方法、构造方法,但是构造方法不能用来new实例化。
4、抽象类只能用来继承
5、抽象方法一定要被子类实现
还没有评论,来说两句吧...