接口----应用

//笔记本电脑
/*鼠标的使用
class Mouse
{

}

public class InterfaceDemo3 {

    public static void main(String[] args) {
        useMouse(new Mouse());
    }
    public static void useMouse(Mouse m) {
        m.open();
    }
}
*/
//但是,之后市面上出现了新产品,出现摄像头等等等等
//若如此代码,通用性太差了。

interface USB//暴露的规则。
{
    public void open();
    public void close();
}
public class InterfaceDemo3 {

    public static void main(String[] args) {
        useUSB(new Upan());//功能扩展了。如果之后还要加功能,即
        useUSB(new usbMouse());
    }
    //使用规则。
    public static void useUSB(USB u)//接口类型的引用指向的都是子类的对象
    {
        u.open();
        u.close();
    }
}
//一年后,出现了U盘

//这些设备和电脑的耦合性降低了。

class Upan implements USB   //实现规则。
{
    public void open() {
        System.out.println("uPan is run");
    }
    public void close() {
        System.out.println("uPan is close");
    }
}

class usbMouse implements USB
{
    public void open() {
        System.out.println("usbMouse is run");
    }
    public void close() {
        System.out.println("usbMouse is close");
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章