欢迎来到天天文库
浏览记录
ID:62033705
大小:37.00 KB
页数:3页
时间:2021-04-15
《java中类与类之间的关系.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、类与类之间的关系对于理解面向对象具有很重要的作用,以前在面试的时候也经常被问到这个问题,在这里我就介绍一下。类与类之间存在以下关系:(1)泛化(Generalization)ﻫ(2)关联(Association)ﻫ(3)依赖(Dependency)ﻫ(4)聚合(Aggregation)UML图与应用代码例子:ﻫ1.泛化(Generalization)ﻫ[泛化]ﻫ表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系.一般化的关系是从子类指向父类的,与继承或实现的方法相反。[具体表现]ﻫ父类父
2、类实例=new子类()ﻫ[UML图](图1。1)ﻫ图1。1Animal类与Tiger类,Dog类的泛化关系[代码表现]1.class Animal{} 2.class Tiger extends Animal{} 3.public class Test 4.{ 5. public void test() 6. { 7. Animal a=new Tiger(); 8. } 9.} 2.依赖(Dependency)[依赖]ﻫ对于两个相对独立的对象,当一
3、个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。ﻫ[具体表现]依赖关系表现在局部变量,方法的参数,以及对静态方法的调用ﻫ[现实例子]ﻫ比如说你要去拧螺丝,你是不是要借助(也就是依赖)螺丝刀(Screwdriver)来帮助你完成拧螺丝(screw)的工作ﻫ[UML表现](图1。2)ﻫ图1.2 Person类与Screwdriver类的依赖关系ﻫ[代码表现]1.public class Person{ 2. /** 拧螺丝 */ 3. public v
4、oid screw(Screwdriver screwdriver){ 4. screwdriver.screw(); 5. } 6.} ﻫ3.关联(Association)[关联]ﻫ对于两个相对独立的对象,当一个对象的实例与另一个对象的一些特定实例存在固定的对应关系时,这两个对象之间为关联关系。[具体表现]ﻫ关联关系是使用实例变量来实现ﻫ[现实例子]比如客户和订单,每个订单对应特定的客户,每个客户对应一些特定的订单;再例如公司和员工,每个公司对应一些特定的员工,每个员工对应一
5、特定的公司ﻫ[UML图](图1.3)ﻫ图1.3公司和员工的关联关系[代码表现]1.public class Company{ 2. private Employee employee; 3. public Employee getEmployee(){ 4. return employee; 5. } 6. public void setEmployee(Employee employee){ 7. this。employee=employ
6、ee; 8. } 9. //公司运作 10. public void run(){ 11. employee。startWorking(); 12. } 13.}
此文档下载收益归作者所有