zoukankan      html  css  js  c++  java
  • 代码片--可扩展性的模式(接口加多态)

    package com.dreamy.day03;
    
    /**
     * @author dreamy
     * 需求:
     * 电脑运行实例
     * 电脑运行基于主板
     * 用接口和多态实现程序的可扩展性
     */
    
    abstract interface PCI{
        public abstract void open();
        public abstract void close();
    }
    class MainBoard{
        public void run() {
            System.out.println("mainboard run...");
        }
        public void userPCI(PCI p) {//PCI p=new NetCard//接口型引用指向自己的子类对象--多态的应用
            if(p!=null) {
                p.open();
                p.close();
            }
        }
    }
    
    public class DuoTai02 {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            MainBoard mb=new MainBoard();
            mb.run();
            mb.userPCI(null);
            mb.userPCI(new NetCard());
            mb.userPCI(new SoundCard());
        }
    
    }
    
    class NetCard implements PCI{
    
        @Override
        public void open() {
            System.out.println("netcard open");
        }
        @Override
        public void close() {
            System.out.println("netcard close");
        }
    }
    class SoundCard implements PCI{
        @Override
        public void open() {
            System.out.println("soundcard open");
        }
        @Override
        public void close() {
            System.out.println("soundcard close");
        }
    }
  • 相关阅读:
    P1012拼数
    P1622释放囚犯
    P1064 金明的预算方案
    P1754球迷购票问题
    卡塔兰数
    P1474货币系统
    P2562kitty猫基因
    P3984高兴的津津
    5-servlet简介
    java通过百度AI开发平台提取身份证图片中的文字信息
  • 原文地址:https://www.cnblogs.com/zhaohuan1996/p/8038490.html
Copyright © 2011-2022 走看看