• 利用接口“组装电脑”


    CPU接口:

     1 public interface ICPU {
     2 
     3         //性能
     4         public void XingNeng();
     5             
     6         //型号
     7         public void XingHao();
     8         
     9         //生产厂家
    10         public void ShengChan();
    11 }
     1 public interface ICPU1 {
     2     
     3             //性能
     4             public void XingNeng1();
     5                 
     6             //型号
     7             public void XingHao1();
     8             
     9             //生产厂家
    10             public void ShengChan1();
    11 }

    显卡接口:

     1 public interface IXianKa {
     2 
     3     //性能
     4     public void XingNeng();
     5         
     6     //型号
     7     public void XingHao();
     8     
     9     //生产厂家
    10     public void ShengChan();
    11     
    12 }

    实现接口:(左边实现CPU,右边实现显卡)

     1 public class CPU implements ICPU,ICPU1{
     2 
     3     @Override
     4     public void XingNeng() {
     5         // TODO 自动生成的方法存根
     6         System.out.println("性能好的CPU");
     7     }
     8 
     9     @Override
    10     public void XingHao() {
    11         // TODO 自动生成的方法存根
    12         System.out.println("型号intel");
    13     }
    14 
    15     @Override
    16     public void ShengChan() {
    17         // TODO 自动生成的方法存根
    18         System.out.println("美国生产的");
    19     }
    20 
    21     @Override
    22     public void XingNeng1() {
    23         // TODO 自动生成的方法存根
    24         System.out.println("这不知道");
    25     }
    26 
    27     @Override
    28     public void XingHao1() {
    29         // TODO 自动生成的方法存根
    30         System.out.println("也不知道");
    31     }
    32 
    33     @Override
    34     public void ShengChan1() {
    35         // TODO 自动生成的方法存根
    36         System.out.println("你猜呢");
    37     }
    38 
    39     
    40 }
     1 public class XianKa implements IXianKa{
     2 
     3     @Override
     4     public void XingNeng() {
     5         // TODO 自动生成的方法存根
     6         System.out.println("我是显卡,我很强大!");
     7     }
     8 
     9     @Override
    10     public void XingHao() {
    11         // TODO 自动生成的方法存根
    12         System.out.println("我是AMD的显卡");
    13     }
    14 
    15     @Override
    16     public void ShengChan() {
    17         // TODO 自动生成的方法存根
    18         System.out.println("不知道是哪里生产的");
    19     }
    20 
    21 }

    构建computer:

     1 public class Computer {
     2 
     3     //组装电脑
     4     private ICPU cpu;
     5     
     6     private IXianKa xianka;
     7     
     8     public void cpu(){
     9         if(cpu==null){
    10             System.out.println("我还没有CPU,请装入CPU");
    11         }else{
    12             System.out.println("我已有CPU,CPU的详细信息是:");
    13             cpu.XingNeng();
    14             cpu.XingHao();
    15             cpu.ShengChan();
    16         }
    17     }
    18     public void xianka(){
    19         if(xianka==null){
    20             System.out.println("我还没有显卡,请装入显卡");
    21         }else{
    22             System.out.println("我已有显卡,显卡的详细信息是:");
    23             xianka.XingNeng();
    24             xianka.XingHao();
    25             xianka.ShengChan();
    26         }
    27     }
    28 
    29     public ICPU getCpu() {
    30         return cpu;
    31     }
    32 
    33     public void setCpu(ICPU cpu) {
    34         this.cpu = cpu;
    35     }
    36 
    37     public IXianKa getXianka() {
    38         return xianka;
    39     }
    40 
    41     public void setXianka(IXianKa xianka) {
    42         this.xianka = xianka;
    43     }
    44 }

    测试computer:

     1 public class TestComputer {
     2 
     3     
     4     public static void main(String[] args) {
     5         
     6         Computer c = new Computer();
     7         
     8         //装入CPU
     9 //        c.setCpu(new CPU());
    10         
    11         c.cpu();
    12         
    13         System.out.println("------------------");
    14         
    15         //装入显卡
    16         c.setXianka(new XianKa());
    17        // System.out.println(c.getXianka());
    18         
    19         c.xianka();
    20         
    21     }
    22 }

    运行结果:

    我已有CPU,CPU的详细信息是:
    性能好的CPU
    型号intel
    美国生产的
    ------------------
    我已有显卡,显卡的详细信息是:
    我是显卡,我很强大!
    我是AMD的显卡
    不知道是哪里生产的

  • 相关阅读:
    最长回文子串
    无题2
    第N个泰波那契数
    除数博弈
    函数调用_强制指定回调函数的函数上下文
    函数调用_通过apply和call方法调用
    函数调用_通过构造函数调用
    理解函数调用_函数调用
    处理集合_删除数组元素的粗略方法
    理解函数调用_使用严格模式边使用arguments别名
  • 原文地址:https://www.cnblogs.com/zhengfengyun/p/5149165.html
Copyright © 2020-2023  润新知