通过栗子,一个人可以有多辆汽车
定义人 这个类
人可以有很多辆汽车,类中车属性用数组
class Person{
private String name;
private String phone;
private Car[] car;
public Person() {}
public Person(String name, String phone) {
this.name = name;
this.phone = phone;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public Car[] getCar() {
return car;
}
public void setCar(Car[] car) {
this.car = car;
}
public String getInfo(){
return "姓名"+name+",电话"+phone;
}
}
然后定义汽车 这个类
class Car{
private String name;
private double price;
private Person person;
public Car() {}
public Car(String name,double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
public String getInfo() {
return "品牌:"+name+" 价格:"+price;
}
之后,在测试类中,分别实例Person类和Car类
人这个对象只new一个
汽车可以无限个,这里象征性实例三个
Person p = new Person("阿三","33333333");
Car c1 = new Car("宝马",400000);
Car c2 = new Car("宝来",100000);
Car c3 = new Car("宝骏",800
对象实例化之后,设置彼此的关系,即一个人对应三台车,每台车都对应一个人
通过set方法传值
p.setCar(new Car[]{c1,c2,c3});
c1.setPerson(p);
c2.setPerson(p);
c3.setPerson(p);
测试
通过人,查询其下的车辆信息
System.out.println(p.getInfo()+"拥有的车辆");
for(int i=0;i
System.out.println(p.getCar()[i].getInfo()); //数组类型用for循环打印
}
运行
通过车,查找所属人信息
System.out.println(c1.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());
System.out.println(c2.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());
System.out.println(c3.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());
运行