Java複習之物件一對多關係與物件多對一關係

2021-07-27 22:04:13 字數 2239 閱讀 5158

這篇部落格主要是在集合的基礎上學習一下物件的一對多關係與物件的多對一關係。

1.物件的一對多關係

我們拿古代皇帝與後宮佳麗來舉乙個例子,皇帝只有乙個,而佳麗卻有三千之多。皇帝與後宮佳麗之間的關係就是一對多的關係,同時,後宮佳麗與皇帝之間的關係是多對一的關係。

demo:

public

class emperor

public

void

setconcubines(setconcubines)

public

emperor(string title, string name)

public string getname()

public string gettitle()

public

void

setname(string name)

public

void

settitle(string title)

@override

public string tostring() ';

}}

public

class concubine

//多對一關係

public

void

setemperor(emperor emperor)

public

concubine(string name, string jobs)

public string getname()

public string getjobs()

public

void

setname(string name)

public

void

setjobs(string jobs)

@override

public string tostring() ';

}}

public

class

onetomanydemo

}}

其實仔細看一下**的實現過程也不難,就在皇帝類中關聯妃子的物件,並實現妃子物件的獲得與修改的方法,同樣在妃子類中關聯皇帝的物件,並新增物件的get與set方法。在實現類中,使用皇帝的物件呼叫妃子的set方法為皇帝繫結多個妃子物件,使用妃子物件的呼叫皇帝的set的方法,妃子繫結皇帝。

2.物件的多對多關係

我們再舉乙個生活中的例子,老師與學生的例子,老師教多個學生,學生被多個老師教,老師與同學之間便形成了多對多的關係。

ublic class teacher 

public

void

setstudents(arrayliststudents)

public string getname()

public

intgetage()

public

void

setname(string name)

public

void

setage(int age)

public

teacher(string name, int age)

@override

public string tostring() ';

}}

public

class student

public

void

setteachers(arraylistteachers)

public

student(string name, int age)

public

intgetage()

public string getname()

public

void

setage(int age)

public

void

setname(string name)

@override

public string tostring() ';

}}

public class manytomanydemo 

}

實現的原理與物件的多對一的實現原理是差不多的,不過就是在另外乙個類中也是宣告物件的集合,而不只是單個物件。

sqlalchemy 一對多 關係

import os import sqlalchemy from sqlalchemy import create engine,column,integer,string,foreignkey,sequence from sqlalchemy.ext.declarative import decl...

Mvc Entityfraome一對多關係對映

第一資料庫建立 第二建立mvc ef專案 注意要點 如下資料庫表 t classes,t students 建立兩個類與資料庫表相對應 public class class public string name public virtual icollectionstudent new list p...

hibernate 一對多關係

1.首先在實體類描述資料庫主外來鍵關係,比如 我有多個訂單項 private setoritems new hashset 在order item定義order 屬性 2.需要在對映的實體類描述關係,我這裡是乙個訂單有多個訂單項 order.hbm.xml order item.hbm.xml 關於...