package com.test.basic.chapter4.abstractDemo;
/**
*
*
* 一、java抽象类的作用
*
* java抽象类的作用具体的可以分成以下的三点:
*
* 1、抽象类通常都是用来表征对问题领域进行分析、设计中得出的抽象概念,是对大多数看上去不同,可是本质上却是相同的具体概念的抽象
*
* 2、在面向对象方法当中,抽象类主要是用来进行类型隐藏
*
* 构造出一个固定的一组行为的抽象描述,可是这组行为却可以有任意个可能的具体实现方式,这个抽象描述就是我们所说的抽象类
*
* 这一组任意个可能的具体实现就表现为所有可能的派生类
*
* 模块能够操作一个抽象体
*
* 因为模块依赖于一个固定的抽象体,所以它可以是不允许修改的
*
* 3、通过从这个抽象体派生,也能够扩展这个模块的行为功能
*
* 为了可以实现面向对象设计的一个最核心的原则,也就是OCP,抽象类可以说是这当中一个很关键的东西
*
* 二、抽象类作用例子//抽象类的作用;模板作用(本例中:
*
* //抽象的父类中,父类的普通方法依赖于一个抽象方法,而抽象方法则推迟到子类中
*
* //去实现)
* 抽象类
* 注意:抽象类不一定有抽象方法,反过来,有抽象方法的类必是抽象类
*/
public abstract class Animal {
String name;
int age;
//动物会叫
//抽象方法没有方法体
public abstract void cry();
}
package com.test.basic.chapter4.abstractDemo;
/**
*
* 功能:抽象类演示
*/
public class AbstractDemo {
public static void main(String[] args) {
//抽象类不能被实例化
//抽象方法没有方法体,实例化调用方法又有什么用呢?????????
// Animal a = new Animal();
Animal cat = new Cat();
cat.cry();
}
}
package com.test.basic.chapter4.abstractDemo;
/**
*
* 当一个类继承的父类是抽象类,需要实现抽象类的所有抽象方法
*/
public class Cat extends Animal {
@Override
public void cry() {
System.out.println("猫猫叫");
}
}