类与类的关系

2022-02-16  本文已影响0人  码男将将

前言

类与类之间存在关系,本文章说一说类之间的关系怎么产生,从设计层面分析类与类之间应该用哪种方式关联,以及列举常见的类关系。

面向对象编程

众所周知面向对象编程是一种编码思维即将一件事当作一个对象,需要多少个对象完成多少件事。这些事的集合就是要做的业务。
面向对象编程分为三个阶段:

// 篮球类
public class Basketball {
}
//器官类
public class Organ {
}
//人类
public class Person {
}

-2.对象具有哪些特征和行为

// 篮球类
public class Basketball {
    private String brand;
    private String name;
}
//器官类
public class Organ {
    private String name;

    public Organ(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
//人类
public class Person {
    private String name;
    private String gender;
    private int age;
    private Organ organ; //器官

    public Person(String name, String gender, int age, Organ organ) {
        this.name = name;
        this.gender = gender;
        this.age = age;
        this.organ = organ;
    }

    // 打篮球
    public void play(Plane plane){
        System.out.println(this.name+"用"+this.organ.getName()+"打了"+plane.getBrand()+"公司生产的"+plane.getName()+"型号篮球");
    }
}
public class Test {
    public static void main(String[] args) {
       Basketball basketball = new Basketball("斯伯丁", "橘色");
        Organ organ = new Organ("手");
        Person person = new Person("小明", "男", 18, organ);
        person.play(plane); // 小明用手打了斯伯丁公司生产的747橘色型号篮球
    }
}

类与类产生关联的方式

列举类与类的关系

类与类的关系共有六种即继承关系/实现关系/依赖关系/关联关系/聚合关系/组合关系
其中聚合关系和组合关系属于关联关系的子集,语法上和关联关系一样,逻辑上有区别.

public class Primate {
    //灵长类
}
public class Person extends Primate{
//人类
}
public interface Interface01{
}
public interface Interface02 extends Interface01{
}
public interface Interface01{
    public abstract void eat();
}
public class Class01 implements Interface01{
    @Override
    public void eat() {
        System.out.println("吃");
    }
}

写在后面

以上按我的理解的六种关系做了些列举中间的例子可能不太恰当。有问题的话赶紧联系我,我已经块一个月没挨骂了。

上一篇 下一篇

猜你喜欢

热点阅读