接口定义
- 简单理解:一个接口可对应一个或多个实现方法,在接口中可定义方法不必实现方法,自我感觉假如一个接口只有一个实现方法,那么实际上没什么意义,将其定义成一个普通类就行。
- java例子:定义一个输出面积的接口,其中有一个输出面积的方法;有圆和矩形两个类来实现这个接口。
//图形输出的接口
public interface show_graphic {
public default void show_area(){
}
}
实现关系
- 圆形和矩形的实现方法
//圆实现输出图形面积接口的方法
public class round implements show_graphic {
public double r;
public void round(double r){
this.r = r;
}
@Override
public void show_area() {
double area = 3.14 * r * r;
System.out.println("圆的面积为:"+area);
}
}
//矩形实现输出图形面积接口的方法
public class rect implements show_graphic{
public double r1;
public double r2;
public void rect(double r1,double r2){
this.r1 = r1;
this.r2 = r2;
}
@Override
public void show_area() {
double area = r1*r2;
System.out.println("矩形的面积为:"+area);
}
}
依赖关系
- 定义一个计算图形周长的类,需要依赖于圆形和矩形的类
//计算图形的周长_依赖关系
public class girth {
public void show_girth(round r,rect f){
double round_r = r.r;
double rect_r1 = f.r1;
double rect_r2 = f.r2;
System.out.println( "圆的周长为:"+ 2*3.14*round_r);
System.out.println("矩形的周长为:" + 2*(rect_r1+rect_r2));
}
}
组合关系
- 简单理解:组合关系可以理解成整体和部分相互依存,一个人有胳膊、有腿等等器官组成。
- 简单例子:定义一个person类,定义一个arm类、定义一个eye类
- java例子:
public class arm {
}
public class eye {
}
public class leg {
}
public class person {
arm a = new arm();
eye e = new eye();
leg l = new leg();
}
聚合关系
- 简单理解:聚合关系可以理解成整体不依赖于部分,整体的存在和部分的存在没有直接关系。
- 简单例子:定义一个team类,定义一个student类、定义一个teacher类。
- java例子:
public class student {
}
public class teacher {
}
public class team {
public student s;
public teacher t;
}
继承关系
- 简单理解:继承关系就是子类继承父类的属性和方法,同时可以重写继承来的方法,也可以直接调用分类的方法。
- 简单例子:定义一个moudle父类,定义一个子类rect_module和一个子类round_module。
- java例子:
public class module {
public String name;
public String color;
public void set_name(String name){
this.name =name;
System.out.println(this.name);
}
public void set_color(String color){
this.color =color;
System.out.println(this.color);
}
}
public class rect_module extends module{
public String type;
public void set_type(String type){
this.type = type;
System.out.println(this.type);
}
}
public class round_module extends module {
public String type;
public void set_type(String type) {
this.type = type;
System.out.println(this.type);
}
}
总结一下:
1、平常很少写java所以代码这一块可能比较丑陋。
2、我理解组合和聚合在代码理解这一块感觉不如就用实际逻辑去理解,也可以用UML类图这一块去理解。
3、代码实现这一块只是一个简单的demo,只能简单理解一下。真正写代码还得依靠实际业务逻辑和分析。