主板的演变过程
1、首先电脑能够用起来,那么主板得处于工作状态
2、给电脑添加一个上网功能
3、给电脑添加一个声卡功能
4、上述需求用代码实现完,我们会发现,代码非常不利于扩展,维护性极差
5、这个时候,只要让主板与网卡、声卡...同时遵循一个规则(接口),那么代码的拓展性就有了显著提升。
定义接口前代码如下(main方法中的代码变动较大)
package com.javaxl.object; /** * @author 小李飞刀 * @site www.javaxl.com * @company * @create 2019-05-24 19:32 */ public class ObjectDemo2 { public static void main(String[] args) { ComputerMain cm = new ComputerMain(); cm.run(); Voice v = new Voice(); v.open(); v.close(); Show s = new Show(); s.open(); s.close(); } } /** * 计算机主板 */ class ComputerMain{ public void run(){ System.out.println("computer run"); } } /** * 声卡 */ class Voice{ public void open(){ System.out.println("voice open"); } public void close(){ System.out.println("voice close"); } } /** * 显卡 */ class Show{ public void open(){ System.out.println("show open"); } public void close(){ System.out.println("show close"); } }
定义接口后(提高了主板功能/代码的扩展性,维护起来更加方便)
package com.javaxl.object;
/**
* @author 小李飞刀
* @site www.javaxl.com
* @company
* @create 2019-05-24 19:32
*/
public class ObjectDemo2 {
public static void main(String[] args) {
ComputerMain cm = new ComputerMain();
cm.run();
cm.userPCI(new Voice());
cm.userPCI(new Show());
// Voice v = new Voice();
// v.open();
// v.close();
//
// Show s = new Show();
// s.open();
// s.close();
}
}
/**
* 计算机主板
*/
class ComputerMain{
public void run(){
System.out.println("computer run");
}
public void userPCI(PCI pci){
if(pci != null){
pci.open();
pci.close();
}
}
}
/**
* 外接设备与主板定义的规则
*/
interface PCI{
public void open();
public void close();
}
/**
* 声卡
*/
class Voice implements PCI{
public void open(){
System.out.println("voice open");
}
public void close(){
System.out.println("voice close");
}
}
/**
* 显卡
*/
class Show implements PCI{
public void open(){
System.out.println("show open");
}
public void close(){
System.out.println("show close");
}
}
Jdbc连接驱动包的原理图
备案号:湘ICP备19000029号
Copyright © 2018-2019 javaxl晓码阁 版权所有