例如:一個人擁有某一本書,某一本書屬於一個人,一個小孩擁有某一本書,某一本書屬於一個小孩。
創建一個book類,包含屬性書本的名稱(name)、價格(price),設置一對一的關聯關系(Person person),(Person,child)
public class Book {
private String name;
private float price;
private Person person;
private Person child;
public Person getChild() {
return child;
}
public void setChild(Person child) {
this.child = child;
}
public Book(String name, float price) {
super();
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public float getPrice() {
return price;
}
public void setPrice(float price) {
this.price = price;
}
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
}
創建一個person類,包含屬性人的姓名(name)、年齡(age),設置一對一的關聯關系(Book book),(Person child)
public class Person {
private String name;
private int age;
private Book book;
private Person child;
public Person getChild() {
return child;
}
public void setChild(Person child) {
this.child = child;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Book getBook() {
return book;
}
public void setBook(Book book) {
this.book = book;
}
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
}
測試類
public class demo {
public static void main(String[] args) {
Person person = new Person("張三", 15);
Person child = new Person("李四", 6);
Book book = new Book("javaSE", 88);
Book book2 = new Book("一千零一夜", 18);
person.setBook(book);//設置對象之間的關系:一個人有一本書
book.setPerson(person);//設置對象之間的關系:一本書屬於一個人
book.setPerson(child);//設置對象之間的關系:一本書屬於一個孩子
child.setBook(book2);//設置對象之間的關系:一個孩子有一本書
person.setChild(child);//設置對象之間的關系:一個人有一個孩子
System.out.println("姓名:"+person.getName() +"年齡:"+ person.getAge() +"書本名稱:"+ person.getBook().getName()+"價格:"+person.getBook().getPrice());
System.out.println("姓名:"+person.getChild().getName()+"年齡:"+person.getChild().getAge()+"書本名稱:"+person.getChild().getBook().getName());
System.out.println("書名:"+book.getName() + "價格:"+book.getPrice() +"姓名:"+ book.getPerson().getName()+"年齡:"+book.getPerson().getAge());
}
}