📅  最后修改于: 2023-12-03 15:32:00.331000             🧑  作者: Mango
在Java中,抽象类是指不能直接实例化的类。它通常用于作为其他类的基础。抽象类可以包含抽象方法和非抽象方法,而抽象方法是指没有实现的方法,需要在子类中被实现。下面介绍Java中抽象类的特点、语法和使用场景。
声明一个抽象类时,需要使用abstract
关键字,如下所示:
public abstract class AbstractClass {
// 抽象方法
public abstract void doSomething();
// 非抽象方法
public void doSomethingElse() {
// ...
}
}
上述代码中,AbstractClass
是一个抽象类,其中包含一个抽象方法doSomething()
和一个非抽象方法doSomethingElse()
。
下面的示例展示了如何在Java中使用抽象类:
// 抽象类
public abstract class Animal {
public abstract void makeSound();
}
// 子类
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("汪汪汪~");
}
}
// 子类
public class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("喵喵喵~");
}
}
// 测试类
public class Test {
public static void main(String[] args) {
Animal dog = new Dog();
Animal cat = new Cat();
dog.makeSound(); // 输出:汪汪汪~
cat.makeSound(); // 输出:喵喵喵~
}
}
上述代码中,Animal
是一个抽象类,包含一个抽象方法makeSound()
,Dog
和Cat
是Animal
的子类,实现了makeSound()
方法。在Test
类中,分别创建了一个Dog
和一个Cat
对象,并调用了它们的makeSound()
方法。