//筆記本電腦
/*鼠標的使用
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");
}
}
接口----應用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.