//部分setter,getter和无参构造略
class Province {
private int pid;
private String pname;
private City city[];//一个省有多个城市
public Province(int pid, String pname) {
this.pid = pid;
this.pname = pname;
}
public void setCity(City city[]) {
this.city = city;
}
public City[] getCity() {
return this.city;
}
public String getInfo() {
return "省份标号: " + this.pid + " 省份名: " + this.pname;
}
}
class City {
private int cid;
private String cname;
private Province province;//一个城市属于一个省
public City(int cid, String cname) {
this.cid = cid;
this.cname = cname;
}
public void setProvince(Province province) {
this.province = province;
}
public Province getProvince() {
return this.province;
}
public String getInfo() {
return "城市名: " + this.cid + " 城市编号: " + this.cname;
}
}
public class TestDemo {
public static void main(String args[]) {
//实例化对象
City ca = new City(61,"西安");
City cb = new City(62,"宝鸡");
City cc = new City(63,"咸阳");
Province province = new Province(6,"陕西");
//设置关系
ca.setProvince(province);
cb.setProvince(province);
cc.setProvince(province);
province.setCity(new City[] {ca,cb,cc});
//取出数据
//一个城市找到他对应的省份
//一个省找到他包含的城市
System.out.println("\t -|" + ca.getProvince().getInfo());
for (int x = 0; x < province.getCity().length; x++) {
System.out.println("\t -|" + province.getCity()[x].getInfo());
}
}
}