【问题】Java中实现多态的机制是什么?
答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。
重写Overriding是父类与子类之间多态性的一种表现。
重载Overloading是一个类中多态性的一种表现。
Java类多态性的例子:
张孝祥java就业教程源代码
- interface PCI//某标准化组织
- {
- void start();
- void stop();
- void NameCard();
- }
- class NetWorkCard implements PCI//网卡生产商
- {
- public void NameCard()
- {
- System.out.println("-----网卡----");
- }
- public void start()
- {
- System.out.println("send...");
- }
- public void stop()
- {
- System.out.println("stop...");
- }
- }
- class SoundCard implements PCI//声卡生产商
- {
- public void NameCard()
- {
- System.out.println("-----声卡------");
- }
- public void start()
- {
- System.out.println("du..du");
- }
- public void stop()
- {
- System.out.println("sound stop");
- }
- }
- class MainBoard//主板生产商
- {
- public void usePCICard(PCI p)
- {
- p.NameCard();
- p.start();
- p.stop();
- }
- }
- class Assembler//装机员
- {
- public static void main(String [] args)
- {
- MainBoard mb=new MainBoard();
- NetWorkCard nc=new NetWorkCard();
- SoundCard sc=new SoundCard();
- mb.usePCICard(nc);
- mb.usePCICard(sc);
- mb.usePCICard(new PCI()//匿名内置类
- {
- public void NameCard()
- {
- System.out.println("------测试----");
- }
- public void start()
- {
- System.out.println("test start");
- }
- public void stop()
- {
- System.out.println("test stop");
- }
- }
- );
- }
- }
参考资料:
http://hi.baidu.com/full68/blog/item/7375216327c902650d33fa14.html
阅读(1606) | 评论(1) | 转发(1) |