Java类与类之间的关系

 Java类和类之间关系
类和类之间关系包括 is a,has a, use a三种关系
is a包括了 继承,实现关系
has a包括了 组合,聚合,关联关系
use a包括了 依赖关系


is a
继承:子与父的关系,狗是动物
实现:类实现接口,UserImpl实现了User接口
has a

组合:人有一个心脏,而且这个心脏是在创造人时,内部创造的.(本类自带的属性)

public class Heart{};public class Person{


    private Hart hart;
    
    publicPerson(){
    
        this.hart=newHart();
    
    }
}


聚合:有的关系,汽车有发动机,而且汽车产生就有发动机了,而对于汽车制造的时候,发动机不一定是自己造的,可以拿别人造好的发动机(传参数过去的)
public class Engine{}


public class Car{


    private Engine engine;


    public Car(Engine engine){


        this.engine=engine;


    }

}


关联:一个人可以有一辆汽车,而这个汽车不是一个人出生就有,而是后期买的(setter赋值得到的 )
public class Car{}


public class Person{


    private Car car;


    public void setCar(){


        this.car=car;


    }


}


依赖:使用的关系,一个人可以做火车到达想去的地方,但火车不是这个人的东西,人只是使用火车移动
public class Train{


    public void move(){}


}


public class Person{


    public void move(Train train){


        train.move();


    }


}




通过代码可以看出,类和类之间的关系,按我这个顺序是从高到低
一个类改变了对于其他类的影响也是从高到低
我们写代码要遵守两个原则
高低原则
    高内聚,低耦合
开闭原则
   对扩展开,对修改闭
所以我们写代码,能有耦合低的关系就不要用耦合高的关系
附类图
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值