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("山羊在吃草");
    }

}
相关推荐
天天被压力36 分钟前
【Python量化实战宝典 #03】指数与板块行情接口全拆解:大盘·行业·概念一键取(Python 可跑)
java·人工智能·python
\光辉岁月/37 分钟前
14.JavaSE-IOStream
java·io·stream
云和数据.ChenGuang37 分钟前
Spring AI 对接 LangGraph:构建企业级智能体工作流实战
java·人工智能·spring boot·后端·spring
云和数据.ChenGuang41 分钟前
Spring AI 入门实战:构建你的第一个 AI 应用
java·人工智能·深度学习·spring·机器学习·语言模型
下雨天没带伞42 分钟前
Java Stream API实战,告别for循环
java
用户3721574261351 小时前
Java 高效管理 Excel 批注:添加、读取、修改和删除
java
C语言小火车1 小时前
C++ 为什么越来越依赖标准库?
java·开发语言·c++
西索斯coding1 小时前
在 中接入 教程:p配置、m填写、扩展思考参数一篇就够(2)
java·前端·javascript·ai
隐退山林1 小时前
JWT令牌技术
java·开发语言·java-ee
w_zero_one1 小时前
动态规划(三)
java·算法·动态规划