温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java抽象类怎么用

发布时间:2026-09-18 23:14:06 来源:亿速云 阅读:96 作者:小樊 栏目:编程语言

在 Java 中,抽象类(abstract class)是一种不能被直接实例化,主要用于被继承的类。它通常用来抽取多个子类的公共属性和行为,并可以包含抽象方法(只有声明、没有实现)和具体方法。

下面从 是什么 → 怎么写 → 怎么用 → 注意事项 给你讲清楚。


一、什么是抽象类

abstract class Animal {
    // 抽象方法(没有方法体)
    public abstract void sound();

    // 具体方法
    public void eat() {
        System.out.println("吃东西");
    }
}

特点:

  • 用 abstract 修饰类
  • 可以包含:
    • 抽象方法(必须被子类实现)
    • 普通方法
    • 构造方法(但不能 new)
  • 不能直接 new 抽象类

二、抽象类的基本用法

1️⃣ 定义抽象类

abstract class Animal {
    String name;

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

    // 抽象方法
    public abstract void sound();

    // 普通方法
    public void show() {
        System.out.println("我是" + name);
    }
}

2️⃣ 子类继承抽象类(必须实现抽象方法)

class Dog extends Animal {
    public Dog() {
        super("狗");
    }

    @Override
    public void sound() {
        System.out.println("汪汪汪");
    }
}
class Cat extends Animal {
    public Cat() {
        super("猫");
    }

    @Override
    public void sound() {
        System.out.println("喵喵喵");
    }
}

3️⃣ 使用抽象类(多态)

public class Test {
    public static void main(String[] args) {
        Animal a1 = new Dog();
        Animal a2 = new Cat();

        a1.show();
        a1.sound();

        a2.show();
        a2.sound();
    }
}

✅ 输出:

我是狗
汪汪汪
我是猫
喵喵喵

三、抽象类 vs 接口(简单对比)

对比项 抽象类 接口
关键字 abstract interface
能否有方法实现 ✅ 可以 Java 8+ 可以
成员变量 任意 默认 public static final
单继承 ✅ 只能继承一个 可实现多个
适用场景 有公共逻辑、状态 定义行为规范

四、常见使用场景

✅ 多个类有相同属性和方法 ✅ 需要共享代码 ✅ 不希望被直接创建对象

例如:

  • Animal → Dog / Cat
  • Shape → Circle / Rectangle
  • BaseController → UserController

五、注意事项(很重要)

  1. ❌ 抽象类不能 new
Animal a = new Animal(); // 报错
  1. 子类必须实现所有抽象方法(除非子类也是抽象类)

  2. 抽象类可以有 final 方法,但不能是 abstract final

  3. 构造方法用于子类调用

super(...)

六、小总结一句话

抽象类 = 半成品模板
把共性放进去,把差异留给子类实现。

如果你愿意,我也可以:

  • 用 实际项目例子讲
  • 对比 抽象类 vs 接口(面试常问)
  • 给你 练习题练手

你想看哪一个?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手