组合、继承和代理三者的定义
来源:互联网 发布:ps笔刷for mac 百度云 编辑:程序博客网 时间:2024/06/10 06:14
组合、继承和代理三者的定义:
- 组合:在新类中new 另外一个类的对象,以添加该对象的特性。
- 继承:从基类继承得到子类,获得基类的特性。
代理:在代理类中创建某功能的类,调用类的一些方法以获得该类的部分特性。
使用场合:
组合:
各部件之间没什么关系,只需要组合即可。like组装电脑,需要new CPU(),new RAM(),new Disk()……
演示代码如下:
public class Computer { public Computer() { CPU cpu=new CPU(); RAM ram=new RAM(); Disk disk=new Disk(); }}class CPU{ }class RAM{ }class Disk{ }
继承:
子类需要具有父类的功能,各子类之间有所差异。like Shape类作为基类,子类有Rectangle,CirCle,Triangle……代码不写了,大家都经常用。
代理:
飞机控制类,我不想暴露太多飞机控制的功能,只需部分前进左右转的控制(而不需要暴露发射导弹功能)。通过在代理类中new一个飞机控制对象,然后在方法中添加飞机控制类的各个需要暴露的功能。
演示代码如下:
public class PlaneDelegation{ private PlaneControl planeControl; //private外部不可访问 /* * 飞行员权限代理类,普通飞行员不可以开火 */ PlaneDelegation(){ planeControl=new PlaneControl(); } public void speed(){ planeControl.speed(); } public void left(){ planeControl.left(); } public void right(){ planeControl.right(); }}final class PlaneControl {//final表示不可继承,控制器都能继承那还得了。。 protected void speed() {} protected void fire() {} protected void left() {} protected void right() {}}
本文原址:http://www.linuxidc.com/Linux/2015-04/116277.htm
0 0
- 组合、继承和代理三者的定义
- Java编程:组合、继承和代理的区别
- Java编程:组合、继承和代理的区别
- JAVA中的复用类:继承、组合和代理
- 定义继承RelativeLayout的组合控件
- 组合 继承 与 代理
- 复用类-继承、组合、代理
- 继承和组合的比较
- 继承和组合的比较
- 组合和继承的选择
- 继承和组合的区别
- 组合和继承的关系
- 接口的组合和继承
- java的组合和继承
- 继承和组合的分析
- 类的继承和组合
- 类的继承和组合
- 类的组合和继承
- 自定义标签——迭代器——改进版
- JavaWeb学习总结(十二)——Session
- 递归算法详细分析-> C
- 如何在storyBoard中实现UIimageView长宽相等
- POJ1284---Primitive Roots(求原根个数, 欧拉函数)
- 组合、继承和代理三者的定义
- 前端(初、中级)面试题(June)
- 几个web服务器中的虚拟主机面板,哪个好?把我接下来几天的测试结果写下来。
- 时间转换
- XML转义字符
- 谷歌浏览器访 子框架使用window.parent无法访问父框架
- 来公司一周年的总结
- 各种语言取整
- JDK安装与配置环境变量