Java类和类之间关系

类和类之间关系包括了 is a,has a, use a三种关系
is a包括了 继承,实现关系
has a包括了 组合,聚合,关联关系
use a包括了 依赖关系
继承:子是父的关系,狗是动物
[Java]  纯文本查看  复制代码
?
1
2
public class Animal{}
public class Dog extends Animal{}


实现:实现类实现接口,同样是是的关系,UserServiceImpl实现了UserService接口
[Java]  纯文本查看  复制代码
?
1
2
public interface UserService{}
public class UserServiceImpl implements UserService{}


组合:有的关系,人有一个心脏,而且这个心脏是在创造人时,内部创造的
[Java]  纯文本查看  复制代码
?
1
2
3
4
5
6
7
public class Heart{}
public class Person{
     private Hart hart;
     public Person(){
         this .hart= new Hart();
     }
}


聚合:有的关系,汽车有发动机,而且汽车产生就有发动机了,而对于汽车制造的时候,发动机不一定是自己造的,可以拿别人造好的发动机
[Java]  纯文本查看  复制代码
?
1
2
3
4
5
6
7
public class Engine{}
public class Car{
     private Engine engine;
     public Car(Engine engine){
         this .engine=engine;
     }
}


关联:一个人可以有一辆汽车,而这个汽车不是一个人出生就有,而是后期买的
[Java]  纯文本查看  复制代码
?
1
2
3
4
5
6
7
public class Car{}
public class Person{
     private Car car;
     public void setCar(){
         this .car=car;
     }
}


依赖:使用的关系,一个人可以做火车到达想去的地方,但火车不是这个人的东西,人只是使用火车移动
[Java]  纯文本查看  复制代码
?
1
2
3
4
5
6
7
8
public class Train{
     public void move(){}
}
public class Person{
     public void move(Train train){
         train.move();
     }
}



通过代码可以看出,类和类之间的关系,按我这个顺序是从高到低
一个类改变了对于其他类的影响也是从高到低
我们写代码要遵守两个原则
高低原则
    高内聚,低耦合
开闭原则
   对扩展开,对修改闭
所以我们写代码,能有耦合低的关系就不要用耦合高的关系
附类图

oo.png (7.66 KB, 下载次数: 7)

oo.png
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值