JAVA 多态的一种实现
2014-07-20 19:16
155 查看
今天一个同事问我一个问题,就是关于子类,父类之间方法的调用这里的。这里我整理了一个小DEMO。
代码如下:
父类的代码:
这里,我个人理解,这里的execute()方法,好像用了设计模式中的命令模式。
子类代码:
NEW了一个B类,执行EXECUTE方法,其实这个是执行从父类继承来的,所有子类这个方法都是一样的。在EXECUTE方法中,会调用WORK方法,而这个方法就会调用本类中的具体实现。
本人JAVA学的不是很好,这种方法实现多态,感觉还是蛮有意思的。还用了设计模式。
调用者只需要知道执行execute方法,而不需要关心这个方法怎么实现的。可以通过反射机制,在运行时去执行。这样,大大的降低了模块间的耦合度。
今天又学到了一个。挺好!
2014.7.20
代码如下:
父类的代码:
public abstract class ClassA { public final void execute() { System.out.println("A"); work(); } protected abstract void work(); }
这里,我个人理解,这里的execute()方法,好像用了设计模式中的命令模式。
子类代码:
public class ClassB extends ClassA { public void work() { System.out.println("B is working"); } //方便期间,这里写了一个主方法 public static void main(String[] args) { new ClassB().execute(); } }
NEW了一个B类,执行EXECUTE方法,其实这个是执行从父类继承来的,所有子类这个方法都是一样的。在EXECUTE方法中,会调用WORK方法,而这个方法就会调用本类中的具体实现。
本人JAVA学的不是很好,这种方法实现多态,感觉还是蛮有意思的。还用了设计模式。
调用者只需要知道执行execute方法,而不需要关心这个方法怎么实现的。可以通过反射机制,在运行时去执行。这样,大大的降低了模块间的耦合度。
今天又学到了一个。挺好!
2014.7.20
相关文章推荐
- OOP基本概念之讨论:重载也是实现多态的一种方法吗?
- 一种简单的方法在程序中实现透明效果(JAVA)
- 如何实现Java的多态 推荐
- 一种实现 Java调用C++的DLL的方法
- C语言实现多态的一种方法
- 一种实现数据库连接池的方法(JAVA)
- 用JAVA实现的一种改进的K均值聚类算法流程
- 又一种JSP实现的Java通用简单分页算法
- Java中针对多态的实现
- java 笔试 :java中实现多态的机制是什么
- JAVA中如何用接口实现多继承和多态 (非常好)
- java 实现分页的一种方式
- Java中使用接口实现多继承和多态的方法
- 深入总结Java中多态实现机制
- 分析JAVA、C#、C++的“覆盖”和“隐藏”与多态的实现
- 通过Java实现一种常用的权限控制算法
- 一种简单的方法在程序中实现透明效果(JAVA)(源代码)
- 多态的运用 实现java 数据类型判断
- 一种Java日志系统框架的设计与实现(转)
- java properties 的六种读取方法 以及一种自己最方便的实现