在Java中,抽象是使用Abstract类和接口实现的。抽象类包含子类的抽象方法。以下是抽象类和具体类之间的重要区别。
序号 | 键 | 抽象类 | 具体课程 |
---|---|---|---|
1 | 支持的方法 | 抽象类既可以具有抽象方法,也可以具有具体方法。 | 具体的类只能有具体的方法。甚至只有一个抽象方法也可以使类抽象。 |
2 | 实例化 | 不能使用new关键字实例化抽象类。 | 可以使用new关键字实例化具体类。 |
3 | 抽象方法 | 抽象类可能具有也可能没有抽象方法。 | 水泥桶不能有抽象方法。 |
4 | 最后 | 抽象类不能声明为最终类。 | 具体类可以声明为final。 |
5 | 关键词 | 使用abstract关键字声明的抽象类。 | 具体类在声明期间没有抽象关键字。 |
6 | 继承 | 抽象类可以使用extends关键字继承另一个类并实现一个接口。 | 接口只能继承一个接口。 |
7 | 接口 | 抽象类不能单独实现接口。需要一个子类才能使用该接口进行实例化。 | 接口可以轻松实现。 |
public class JavaTester { public static void main(String args[]) { Cat lion = new Lion(); lion.eat(); } } abstract class Cat { abstract public void eat(); } class Lion extends Cat{ public void eat(){ System.out.println("Lion eats"); } }
Lion eats