java-[abstract 和 interface]

FangShiRui 2020-05-16 PM 2247℃ 0条

抽象角色

abstractinterface是Java语言中对抽象角色定义进行支持的两种机制。其中abstract用于抽象类,interface用于接口(类)。

抽象类与接口的区别

抽象类接口
实例化不能不能
一种继承关系,一个类只能使用一次继承关系一个类可以实现多个接口类
数据成员可以有自己的静态的,不能被修改,必须为static final,一般不在此定义
方法可以私有的,非abstract方法,该方法必须实现不可有私有的,不能有实现
关系"is-a"继承关系"realize-a"实现关系
用法使用关键字 extends使用关键字 implements

具体使用实例

abstract


// 抽象角色:抽象类
abstract class Product {
    // 所有产品的公共业务方法
    public void methodSame(){
    ......
    }

    // 声明抽象业务方法
    public abstract void methodDiff();
}

// 具体类
public class ConcreteProduct extends Product{
    //业务方法
    public void methodDiff() {
        //业务方法的实现
    }
}

interface

// 抽象角色:接口(类)
interface  Chart {
    public void display();
}

//具体产品类(实现产品类)
public class HistogramChart implements Chart {
    
    public HistogramChart(){
        System.out.println("创建柱状图!");
    }

    public void display() {
        System.out.println("显示柱状图!");
    }
}
标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~