Java中类之间的关系

Java中类之间的关系

**横向关系
1.依赖关系
某个对象在执行指定方法时需要其他类的对象参与完成

public class Cup{
 int cno;
 String color;
 double size; 
}
public class People{
 public coid show(String a){
 System.out.println(a);
 }
   public void drink(Cup cup){
   //人想要喝水,需要杯子对象的参与,所以杯子类和人类就是一个依赖关系
   }
}

2.关联关系
它体现的就是两个类或者类与接口之间语义级别的一种强依赖关系,比如我和我的朋友;这种关系比依赖更强,不存在依赖关系的那种偶然性,关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的,关联可以是单向的也可以是双向的.表现在代码层面的话,为被关联的类B以类属性的形式出现在类A中,也可能是关联类A应用了一个类型为被关联类B的全局变量

//部门类
public class Dept(){
String dno;
String dname;
}
//员工类
public class Emp(){
String eno;
String ename;
Dept edep;//所在部门
}

3.聚合关系
是关联关系的特例,代表了整体与部分,拥有的关系
计算机 和 CPU
公司 和 员工
整体与部分之间是不可分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象所共享

4.组合关系
组合也称为强聚合
人 和 大脑
整体与部分之间的关系,但此时整体和部分是不可分离的,整体的生命周期结束也就代表着部分生命周期的结束.

纵向关系

1.继承关系
2.实现关系

java中的继承
1.作用:提高代码的复用性,避免大量代码重复
2.是用extends关键字来继承
3.继承是单一性的,一个子类只能继承一个父类,一个父类可以被多个子类继承
4.父类中包含了所有子类所共有的属性和行为,子类中包含的是每个子类所特有的属性和行为
5.子类继承父类后就包含了子类和父类中所有的属性和行为
6.继承具有传递性
7.java规定在继承后,要想构造子类必须先构造父类
在子类构造器中若没有手动的去调用父类的任何构造器,编译器会默认提供一个super()去访问父类的无参构造器,一旦手动调用了父类的构造器,那么编译器则不再提供默认的super(),而且调用父类的构造器必须写在子类的构造器的第一行.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值