一、类中的主要关系
继承、实现、组合、聚合、依赖、关联
二、UML类图
三、代码实现
public class H2O {
} public class O2 {
} public interface Animal {
public boolean life=false;//是否有生命
public void eat(H2O h2o,O2 o2);//水和氧气 --依赖
} public class Dog implements Animal { //--实现 @Override
public void eat(H2O h2o, O2 o2) {
System.out.println("Bird:eat");
} } public class Bird implements Animal { //--实现
public Wing wing; //翅膀--组合 public Bird(Wing wing){
this.wing=wing;
} @Override
public void eat(H2O h2o, O2 o2) {
System.out.println("Bird:eat");
} public void layEggs(){
System.out.println("Bird:layeggs");
} } public class Wing {
private String size;
private String color;//0 black 1 red 2 white
public Wing(String size,String color){
this.size=size;
this.color=color;
}
} public class Goose extends Bird{ //--继承
public Goose(Wing wing) {
super(wing);
}
public void layEggs(){
System.out.println("Bird:layeggs");
} } public class Penguin extends Bird{//--继承
//企鹅的生存和天气关系很大 --关联
private Climate climate;
public Penguin(Wing wing) {
super(wing);
}
public void layEggs(){
System.out.println("Bird:layeggs");
}
} public class Climate { } public class GooseGroup {
private List<Goose> gooseList; //--聚合 public void vFly(){
System.out.println("GooseGroup:vFly");
} public void straightFly(){
System.out.println("GooseGroup:straightFly");
}
}
=================================================================================
原创文章,转载请务必将下面这段话置于文章开头处(保留超链接)。
本文转发自程序媛说事儿,原文链接https://www.cnblogs.com/abc8023/p/10910741.html
=================================================================================