面向对象-抽象

📅 2026/8/11 3:23:50
面向对象-抽象
一、抽象的介绍1、抽象类怎么来的抽象公共方法放到父类中发现方法没法实现因为每个子类的方法实现细节不一样此时方法说不清道不明可以定义为抽象方法。2、关键字abstract3、抽象方法修饰符 abstract 返回值类型 方法名(参数)抽象方法没有方法体4、抽象类public abstract class 类名{}5、注意a、抽象方法所在的类一定是抽象类b、抽象类中不一定非要有抽象方法c、子类继承父类之后需要重写父类中的所有抽象方法不然编译会报错。d、抽象类不能new对象只能通过new子类对象调用重写方法6、可以将抽象类看成是一类事物的标准要求只要是属于一类的都必须要拥有抽象类中的方法必须要实现。怎么证明拥有了 怎么证明实现了重写。至于方法怎么实现就看子类怎么去重写这个方法体。二、抽象的注意事项1、抽象类不能直接new对象之只能创建非抽象的子类对象。2、抽象类中不一定非得有抽象方法抽象方法所在的类一定是抽象类。3、抽象类的子类必须重写父类中所有的抽象方法否则编译报错除非子类也是抽象类。4、抽象类中可以有成员变量、构造方法、成员方法。5、抽象类中可以有构造方法是提供子类创造对象时初始化父类属性使用的。public abstract class Animal { public abstract void eat(); public abstract void drink(); public void method(){ System.out.println(可以有非抽象的方法); } } public class Dog extends Animal{ Override public void eat() { System.out.println(小狗吃骨头); } Override public void drink() { System.out.println(小狗喝水); } } public class Test { public static void main(String[] args) { Dog dog new Dog(); dog.drink(); } }