java:面向对象(多态的主板示例)。

2023-11-18

需求:电脑运行实例。电脑运行基于主板。

我们写这样一个代码。

class MainBoard
{
 	public void run()
	{
	System.out.println("mainboard run");
	}	 
}
class DuoTaiDemo4
{
	public static void main(String[ ] args)	
    {
    	 MainBoard mb=new MainBoard();
    	 mb.run();
    }
}

运行结果如图

                ​​​​​​​        ​​​​​​​        

可是我们这个程序这样写就是一个死程序。毫无扩展性。我们重新写这个代码。

class MainBoard
{
 	public void run()
	{
	System.out.println("mainboard run");
	}
	public void useNetCard(NetCard c)
	{
		c.open();
		c.close();
	}	 	 
}
class NetCard
{
	public void open()
	{
	System.out.println("netcard open");
	}
	public void close()
	{
	System.out.println("netcard close");
	}	 	 
}
class DuoTaiDemo4
{
	public static void main(String[ ] args)	
    {
    	 MainBoard mb=new MainBoard();
    	 mb.run();
    	 mb.useNetCard(new NetCard());
    }
}

 运行结果如图

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

我们再改成这个代码。

interface PCI
{
	public void open();
	public void close();
}
class MainBoard
{
	public void run()
	{
	System.out.println("mainboard run");
	}
	public void usePCI(PCI p)
	{
		if(p!=null)
		{
		p.open();
		p.close();
	}
	}
}

class DuoTaiDemo4
{
	public static void main(String[ ] args)	
    {
    	 MainBoard mb=new MainBoard();
    	 mb.run();
    	 mb.usePCI(null);
    }
}

 运行结果如图

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

也是可以运行的这样是比较简单的。我们可以自己再自己进行拓展。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java:面向对象(多态的主板示例)。 的相关文章

随机推荐