151220DuoTaiDemo4
2016-01-05 09:43
323 查看
package java151220;
/*
需求:电脑运行实例;
电脑运行基于主板
*/
//扩展接口
interface PCI{
public abstract void open();
public abstract void close();
}
class MainBoard{
public void run() {
System.out.println("MainBoard run !");
}
public void usePCI(PCI pci) {//PCI pci=new NetCard();//接口型引用指向自己的子类对象
if (pci != null) {
pci.open();
pci.close();
}
// pci.open();
// pci.close();
}
}
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() {
}
@Override
public void close() {
}
}
public class DuoTaiDemo4 {
public static void main(String[] args) {
MainBoard mainBoard=new MainBoard();
mainBoard.run();
mainBoard.usePCI(null);
mainBoard.usePCI(new NetCard());
mainBoard.usePCI(new SoundCard());
}
}
/*
public class DuoTaiDemo4 {
public static void main(String[] args) {
MainBoard mainBoard=new MainBoard();
mainBoard.run();
mainBoard.useNetCard(new NetCard());
}
}
class NetCard{
public void open() {
System.out.println("netcard open !");
}
public void close() {
System.out.println("netcard close !");
}
}
class MainBoard{
public void run() {
System.out.println("MainBoard run !");
}
public void useNetCard(NetCard netCard) {
netCard.open();
netCard.close();
}
}
*/
/*
需求:电脑运行实例;
电脑运行基于主板
*/
//扩展接口
interface PCI{
public abstract void open();
public abstract void close();
}
class MainBoard{
public void run() {
System.out.println("MainBoard run !");
}
public void usePCI(PCI pci) {//PCI pci=new NetCard();//接口型引用指向自己的子类对象
if (pci != null) {
pci.open();
pci.close();
}
// pci.open();
// pci.close();
}
}
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() {
}
@Override
public void close() {
}
}
public class DuoTaiDemo4 {
public static void main(String[] args) {
MainBoard mainBoard=new MainBoard();
mainBoard.run();
mainBoard.usePCI(null);
mainBoard.usePCI(new NetCard());
mainBoard.usePCI(new SoundCard());
}
}
/*
public class DuoTaiDemo4 {
public static void main(String[] args) {
MainBoard mainBoard=new MainBoard();
mainBoard.run();
mainBoard.useNetCard(new NetCard());
}
}
class NetCard{
public void open() {
System.out.println("netcard open !");
}
public void close() {
System.out.println("netcard close !");
}
}
class MainBoard{
public void run() {
System.out.println("MainBoard run !");
}
public void useNetCard(NetCard netCard) {
netCard.open();
netCard.close();
}
}
*/
相关文章推荐
- 151220DuoTaiDemo3
- 151220DuoTaiDemo2
- 151220DuoTaiDemo多态详解1
- Thread 常搞混的几个概念sleep、wait、yield、interrupt
- AOJ-0531 Paint Color
- 2016 Nike Air Max 90
- 直接插入排序StraightInsertSort
- [转] AIX lv 4k偏移量
- HDU 1082.Matrix Chain Multiplication【栈的应用+矩阵乘法规则】【1月4】
- 11. Container With Most Water
- IBM小机P520 AIX
- supervisorctl报错"error: <class 'socket.gaierror'>, [Errno -2] Name or service not known"的解决方法
- 出现( linker command failed with exit code 1)错误总结(http://blog.csdn.net/hengshujiyi/article/details/21182813)
- Contains Duplicate 数组中是否包含重复元素
- 行为树-学习笔记(2)-rain插件做简单的敌人AI(1)
- ORA-04098: trigger 'SYS.XDB_PI_TRIG' is invalid and failed re-validation
- 人工智能
- POJ3250 Bad Hair Day(单调栈)
- asiainfo亚信——实习日记
- 2048游戏-AI程序算法分析