泛型方法:是乙個抽象的概念,將批量具有共性的操作進行抽象,使用泛型型別來表示這個方法,實現這些型別的方法具有相同的邏輯,而唯一不同的是,它們的型別,即型別在泛型方法裡是個變數,這話感覺是用肺說出來的,呵呵!
今天在做開發時,遇到了這個問題,最後重構了自己的**,重構後,使用了泛型方法,感覺**美麗多了
//////更新老師與學生的關係
/// ///
要插入的關係列表
///是否為全部,如果全部,不需要向關係表插入
///當前老師id
///public
void adduser_source_r(listlist, bool isall, int teacherid, int objid, int
objtype)
else
break
;
case1:
var respository2 = loadrepository();
var entity2 = loadrepository().find(objid);
if(isall)
else
break
;
case2:
var respository3 = loadrepository();
var entity3 = loadrepository().find(objid);
if(isall)
else
break
;
case3:
var respository4 = loadrepository();
var entity4 = loadrepository().find(objid);
if(isall)
else
break
;
default
:
throw
newargumentexception();
}}
//////更新老師與學生的關係
/// ///
要插入的關係列表
///是否為全部,如果全部,不需要向關係表插入
///當前老師id
///public
void
adduser_source_r(
list
list,
bool
isall,
intobjid,
intobjtype)
}//////
泛型方法來幹這邏輯相同,只是型別不同的事情
/// ///
//////
//////
///void updatesource_r(
list
list,
bool
isall,
intobjid)
where tentity : class
, iaccess
else
}
我們可以看是,泛型方法把不變的邏輯抽象在一起,這樣,有利於**的擴充套件和維護,這才是物件導向的**!
基礎才是重中之重 這時應該用泛型方法了
回到目錄 泛型方法 是乙個抽象的概念,將批量具有共性的操作進行抽象,使用泛型型別來表示這個方法,實現這些型別的方法具有相同的邏輯,而唯一不同的是,它們的型別,即型別在泛型方法裡是個變數,這話感覺是用肺說出來的,呵呵!今天在做開發時,遇到了這個問題,最後重構了自己的 重構後,使用了泛型方法,感覺 美麗...
基礎才是重中之重 方法override詳解
回到 目錄 方法的override,即方法的覆寫或者重寫,有時還是習慣叫它英文override,它是指將父類的abstract或者virtual方法進行重新設計,可以將新的功能加入其中,看起來很不錯,但在使用過程中,有時我們可能拿不準它,下面我說幾點 一 父類是抽象類,這時,它的例項化需要通過子類來...
基礎才是重中之重 位的運算
回到目錄 位運算無論在 還是在 裡都有對它支援,位運算即對數值型別的每位進行計算,對於程式裡,你可以使用十進位制,十六進製制,二進位制對它進行位運算,事實上無論你使用哪種進製,對於計算機來說最後都為把它轉換成二進位制 的形式,因為二進位制為簡單,呵呵。下面是關於位運算的 運算符號 位運算操作符 運算...