Java中的笼统类(Abstract Class)是一种特别的类,它不能被实例化,只能作为其他类的父类。笼统类能够包括笼统办法(没有办法体的办法)和详细办法(有办法体的办法)。假如一个类包括笼统办法,那么这个类也有必要是笼统的。
笼统类的首要意图是为子类供给一个公共的接口和完成。子类有必要完成笼统类中的一切笼统办法,不然它们也有必要是笼统的。
下面是一个简略的笼统类的比如:
```javapublic abstract class Animal { // 笼统办法 public abstract void makeSound;
// 详细办法 public void eat { System.out.println; }}
public class Dog extends Animal { // 完成笼统办法 public void makeSound { System.out.println; }}
public class Cat extends Animal { // 完成笼统办法 public void makeSound { System.out.println; }}```
在这个比如中,`Animal` 是一个笼统类,它包括一个笼统办法 `makeSound` 和一个详细办法 `eat`。`Dog` 和 `Cat` 是 `Animal` 的子类,它们完成了 `makeSound` 办法。因为 `Animal` 是笼统的,咱们不能直接创立 `Animal` 类的实例,但咱们能够创立 `Dog` 或 `Cat` 类的实例。
Java笼统类详解
什么是笼统类
在Java编程语言中,笼统类是一种特别的类,它不能被直接实例化。笼统类首要用于界说一个或多个笼统办法,这些办法没有详细的完成,而是由承继该笼统类的子类来完成。笼统类一般用于在面向目标编程中完成代码复用和笼统层次的规划。
笼统类特色
笼统类具有以下特色:
不能直接实例化目标:笼统类不能被直接用来创立目标,它只能作为其他类的父类。
能够包括笼统办法和详细办法:笼统类能够包括笼统办法(没有办法体的办法)和详细办法(有详细完成的办法)。
能够有结构办法:笼统类能够有自己的结构办法,这些结构办法能够在子类中被调用。
有必要被承继:笼统类有必要被承继,而且承继后子类要重写父类中的笼统办法,不然子类也是笼统类。
笼统办法不能是private的:笼统办法有必要是对外的,因而不能运用private润饰符。
笼统办法不能被final和static润饰:笼统办法需求被子类完成,因而不能被final和static润饰。
笼统类中不一定包括笼统办法,但是有笼统办法的类一定是笼统类。
能够包括常量或实例变量:笼统类能够包括常量或实例变量,这些变量能够在子类中被承继。
成员变量不能被abstract润饰:笼统类中的成员变量不能被abstract润饰。
笼统类的使用场景
笼统类在以下场景中非常有用:
界说一个通用接口:笼统类能够界说一个通用的接口,子类能够依据详细需求完成这些接口。
完成代码复用:经过笼统类,能够界说一些通用的办法,这些办法能够在多个子类中复用。
完成多态:笼统类能够用于完成多态,经过承继笼统类,能够创立具有相同接口的不同目标。
笼统类的示例
以下是一个简略的笼统类示例,界说了一个动物类,其间包括一个笼统办法makeSound(),该办法由子类详细完成:
```java
public abstract class Animal {
public abstract void makeSound();
public void sleep() {
System.out.println(\
未经允许不得转载:全栈博客园 » java笼统类, 什么是笼统类