我刚刚开始学习 Java,并且正在努力寻找实现以下内容的正确方法。
我有一个名为 State 的类。该类有一个名为 stateCaptial 的字段。
我创建一个 State 对象。
然后我想创建许多链接到一个 State 对象的 Town 对象,如果我查询该城镇的州首府,它应该从州对象中获取它。我认为它会被归类为一对多对象关系?
实现此类解决方案的 Java 术语是什么?
非常感谢 安迪
最佳答案
您也可以创建一个 Town
类。因此,State 有一个称为 Town 类型的 Capital 的字段。州还有一组城镇,以便可以查找州的所有城镇。 Town 有一个 State 类型的字段状态。像下面这样的东西。
状态类:
public class State {
private Town capital;
private Set<Town> towns;
public State() {
this.towns = new HashSet();
}
public State(Town capital) {
this.capital = captial;
this.towns = newHashSet();
this.towns.add(capital)
}
public void setCapital(Town capital) {
this.captial = capital;
}
public Town getCapital() {
return this.capital;
}
public void addTown(Town town) {
this.towns.add(town)
}
public Set getTowns() {
return this.towns;
}
}
城镇等级:
public class Town {
private State state;
public Town() {}
public Town(State state) {
this.state = state;
this.state.addTown(this);
}
public void setState(State state) {
this.state = state;
this.state.addTown(this);
}
public State getState() {
return this.state;
}
}
然后,如果您有一个名为 myTown
的 Town
对象,则要获取您使用的城镇的州首府:
myTown.getState().getCapital();
如果您有一个名为 myState
的 State
对象,您将获得您使用的所有城镇:
myState.getTowns();
关于java - 什么 OOP 概念可以处理以下情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3934478/