Java中的抽象类

定义

注意事项:

抽象类和抽象方法的注意事项:

1.抽象类不能被实例化

2.抽象类不一定有抽象方法,但是有抽象方法的类一定是抽象类

3.可以有构造方法(主要为其子类实例化对象用的)

4.抽象类的子类

要么重写抽象类中所有的抽象方法

要么本身也是抽象类

总结:

练习:

java 复制代码
package Test;
/**
 * @ClassName Animal
 * @author gyf
 * @Date 2024/8/21 10:26
 * @Version V1.0
 * @Description :
*/
public abstract class Animal {
    private String name;
    private int age;

    public Animal() {
    }

    public Animal(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
    public void drink(){
        System.out.println("动物在喝水");
    }
    public abstract void eat();
}
java 复制代码
public class Frog extends Animal{
    public Frog() {
    }

    public Frog(String name, int age) {
        super(name, age);
    }

    @Override
    public void eat() {
        System.out.println("青蛙再吃虫子");
    }

}
java 复制代码
public class Dog extends Animal{
    public Dog() {
    }

    public Dog(String name, int age) {
        super(name, age);
    }

    @Override
    public void eat() {
        System.out.println("狗在吃骨头");
    }

}
java 复制代码
public class Sheep extends Animal{

    public Sheep() {
    }

    public Sheep(String name, int age) {
        super(name, age);
    }

    @Override
    public void eat() {
        System.out.println("山羊在吃草");
    }

}
相关推荐
kyle~几秒前
C/C++字面量
java·c语言·c++
neoooo9 分钟前
别慌,Java只有值传递——一次搞懂“为啥我改了它还不变”!
java·后端·spring
秋难降9 分钟前
Python 知识 “八股”:给有 C 和 Java 基础的你😁😁😁
java·python·c
wuxuanok12 分钟前
Web后端开发-请求响应
java·开发语言·笔记·学习
livemetee20 分钟前
spring-ai 1.0.0 (3)交互增强:Advisor 顾问模块
java
DDDDDouble25 分钟前
<二>Sping-AI alibaba 入门-记忆聊天及持久化
java·人工智能
一切顺势而行44 分钟前
kafka总结
java
yanjiaweiya1 小时前
云原生-集群管理
java·开发语言·云原生
gadiaola1 小时前
【JavaSE面试篇】Java集合部分高频八股汇总
java·面试