对Java抽象类的简单理解

 抽象类:
 以前:一个类,如果类中包含抽象方法,那么这个类就是抽象类
 现在:Java中规定,只要一个类是用abstract修饰 ,那么这个类就是抽象类
 特点:
 java规定,抽象类不能创建对象
 抽象类不能创建对象,有什么作用?
 抽象类天生就是作为父类


 抽象方法:
 一个方法,如果只有声明,没有实现 那么这个方法就是抽象方法

 抽象方法产生的?
 当子类的共性不断向上抽取,抽取到一定程度,有些方法我们就不知道如何实现
 那么我们就把这个方法称为抽象方法

 格式:
 抽象方法必须由 关键字 abstract修饰
 public abstract void work();
 抽象类 必须由关键字 abstract修饰
 public abstract class 类名{}

以一个简单的例子来理解:

对一个公司的员工(Employee)进行管理,员工所属两个部门,开发部(Development)和后勤部(Logistics)

company:

package com.test.abstracttest;

public class company {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Developmenter zhang =new Developmenter();
        zhang.name="张三丰";
        zhang.work();
        
        Logisticser zhao = new Logisticser();
        zhao.name="赵无极";
        zhao.work();

    }

}

Employee:

package com.test.abstracttest;

public abstract class Employee {
    String name;
    int age;
    int id;
    
    public abstract void work();
}

Logistics:

package com.test.abstracttest;

public abstract class Logistics extends Employee {

}

Development:

package com.test.abstracttest;

public abstract class Development extends Employee {


}

Developmenter:

package com.test.abstracttest;

public class Developmenter extends Development {
    
    public void work() {
        System.out.println(name+"正在给公司开发程序。。。");
    }

}

Logisticser:

package com.test.abstracttest;

public class Logisticser extends Logistics {
    
    public void work() {
        System.out.println(name+"正在给公司提供后勤支持。。。");
    }
    
}
原文地址:https://www.cnblogs.com/txbblog/p/10341759.html