涉及到的类越来越多,需要一个管理类的工具包(package),
一个类中package只可以有一个,并且放在第一行
一个类中import可以有多个
has-a 包含(组合 聚合 关联)
通过一个类的对象当做另一个类的属性来存储
- 组合–>人和大脑: 整体和部分的关系,不可分割,同时出现或消失
- 聚合–>车和车轮子: 整体和部分的关系,创建时有可能是分开的
- 关联–>人和汽车: 整体和部分的关系,可以分割,后来在一起
eg:
Wheel.java
package contains;
//车轮子
public class Wheel {
//属性
public String brand;//车轮子的品牌
public int size;//车轮子的尺寸
public String color;//车轮子的颜色
//方法
public void turn(){
System.out.println("车轮子可以旋转");
}
//构造方法
public Wheel(){}
public Wheel(String brand,int size,String color){
this.brand = brand;
this.size = size;
this.color = color;
}
}
Car.java
package contains;
//汽车
public class Car {
//属性
public String brand;//品牌
public String type;//型号
public String color;//颜色
public Wheel wheel;//车里有轮子---->包含关系(聚合)
//方法
public void showCar(){
System.out.println("这是一辆"+brand+"牌的"+type+"型号的"+color+"色的小汽车");
System.out.println("车上是"+wheel.brand+"牌"+wheel.color+"色"+wheel.size+"号的车轮");
wheel.turn();//方法一定是对象调用的 车轮子的方法由车轮子对象来调用 可以放在任何地方
}
//构造方法
public Car(){}
public Car(String brand,String type,String color,Wheel wheel){
this.brand = brand;
this.type = type;
this.color = color;
this.wheel = wheel;
}
}
Test.java
package contains;
public class Test {
public static void main(String[] args){
Car car = new Car("八手奥拓","Z4","大酱色",new Wheel("米其林",5,"lv"));
car.showCar();//展示汽车
}
}