摘要: 非常喜歡的一篇文章.介紹了execption c# 設計思路.
閱讀全文
摘要: class Father
{
public virtual void do1(){
Console.WriteLine("father do1");
}
public virtual void do2()
{
Console.WriteLine("father do2");
}
}
class Son :Father
{
public void do1()
{
Console.WriteLine("Son do1");
}
public override void do2()
{
Console.WriteLi
閱讀全文
摘要: cmd.CommandText = @"INSERT INTO (
VALUES
(:date_ ) ; ";
閱讀全文
摘要: 為什么log4j 顯示行號
(2) 建立一個Throwable的對象來取得當前運行堆棧的快照...Throwable.fillInStackTrace();
(3) 從拋出的Throwable對象中,來分析出當前log信息的行號...
閱讀全文
摘要: 其實,很簡單,并不是因為系統打了補丁的問題,而是因為VS 2008打了補丁,導致沒法刪除,可以在“添加/刪除程序”面板中,選中上方的“顯示更新”,然后找到VS 2008,下面多多少少會掛了幾個更新或者補丁,全部先刪掉,然后再刪VS 2008,熟悉的維護界面又回來了,輸入序列號,OK,正常使用~~~
閱讀全文
摘要: 1.作用: 屏蔽方法名 ,靈活性動態性函數指針
2 .使用:
定義一個委托: 和一個類一樣的
delegatevoid Del (int x);
或者
delegatevoid Del
(T x);
定一個委托變量和賦值
Main(){
Del d = obj.DoWork; 實例方法或者靜態方法都可以
}
閱讀全文
摘要: import .
anthoer name
資源 釋放.關閉啊網絡,文件 ,.... IDisposable 接口
閱讀全文
摘要: try{
= () 強轉
}catch (){
}
string s = someObject as string;
if (s != null)
{
// someObject is a string.
}
閱讀全文
摘要: 對virtual的說明是對的:(它一般用在基類中,子類中用override)
1.無virtual時,編譯期就確定方法的類型了。也即:無法實現多態了。
2.有vitual時,方法在運行時確定類型。可以實現多態,只要子類override基類的vitual方法。(也就是樓主的第2點)。
new與virtual并沒有必然的聯系。從字面上看,new聲明的方法是一個“新”方法,與基類完全沒有關系(雖然不幸與基類的某個方法同名同參)。也即:通過向上轉型(如:基類 引用名=new 子類())得到的引用將無法看到子類中new出來的方法。所以會出現樓主第3點中的結果。
閱讀全文
摘要: csc /t:library /out:A.dll a.cs
csc /r:acme.dll Test.cs
csc /t:library /out:A.dll a.cs
csc /r:A.dll MyTest.cs
------------------------------
csc /res:rmc.resources /res:rmc.es-ES.resources r
閱讀全文