C 學習第八天

2021-06-07 06:11:40 字數 2141 閱讀 6500

介面(inte***ce):

c#中介面定義的規則:

1、介面本身的預設訪問級別為internal,即程式集本身訪問級別

2、介面中方法不能使用任何訪問修飾符(例如 public private internal protected)等修飾。(系統自動為其設定為public)

3、不能使用virtual修飾

4、介面不能包含字段,無論是常量,還是例項字段,還是static欄位,都不能包含。(字段本質上是類實現的乙個方面,而介面不能包含任何實現細節)

5、介面不能包含建構函式(建構函式也被認為是一種類的實現細節,與介面不包含任何實現衝突)

6、介面不能包含析構函式

7、介面中不能巢狀任何型別,無論是介面、類,還是結構、列舉等型別。

inte***ce icomparable

屬性本身類似方法,所以規則相同

*/string name

}

實現的類:

class info:lesson2.icomparable

//非顯示實現介面方法時,訪問級別必須是public(即子類方法覆蓋父類或實現介面時不能降低訪問級別)

public string name

set //儘管介面沒提供set;子類仍然可是新增set;

}//非顯示實現介面方法時,訪問級別必須是public(即子類方法覆蓋父類或實現介面時不能降低訪問級別)

//可以把此方法宣告為virtual,以便子類覆寫

public virtual void printmsg()

}

使用:

info info = new info();

info.name = "";

console.writeline(info.name);

//呼叫顯示實現的介面方法時,不能使用類例項,而要使用介面引用

icomparable cp = info;

console.writeline(cp.compareto(1));//列印0

//由於printmsg方法不是通過顯示介面實現的,所以可以通過例項引用呼叫,也可通過介面引用呼叫(多型)

info.printmsg();//例項引用呼叫

cp.printmsg();//介面引用呼叫

console.writeline(cp.name);//介面引用呼叫屬性

抽象類:

//抽象類

abstract class abstractclass

public abstractclass()

public abstractclass(string msg)

public void hi()

public static void say()

/** 建構函式不能是抽象的

public abstract abstractclass(int i);

*//*

* 靜態方法不能標記為virtual、 abstract、 override

public abstract static void say(int i);

*/public abstract void printmsg(string msg);

}//實現抽象類

class subclass : abstractclass

public subclass(): base("我日!")

//抽象方法必須以override方式實現,與實現介面有點兒不一樣

public override void printmsg(string msg)

",msg);}}

使用:

//抽象類使用         

subclass sub = new subclass();

abstractclass.say();//抽象類呼叫靜態方法

subclass.say();//實現抽象類子類呼叫靜態方法(繼承的靜態方法)

abstractclass subabc = sub;

sub.printmsg("568");

subabc.printmsg("123");

學習C的第八天

include int main void return 0 1.如果用於迴圈,用於終止迴圈。2.如果用於switch終止switch。3.不能直接用於if,除非if屬於迴圈內部的乙個子句。include int main void return 0 上述程式printf並沒有輸出所以我們可以知道 ...

JS學習第八天

7.4 for in 使 更加的簡潔 7.5 陣列的應用 1.查詢 a.順序查詢 var a 3,7,11,43,87,5,99,56,82,16 var num number prompt 請輸入要查詢的值 var index 1 最初認為要找的值不在陣列中 for var i in a aler...

Linux C學習第八天

一 運算子與表示式 1.優先順序與結合性 優先順序 運算子的運算順序,優先順序低的先運算 結合性 優先順序相等的情況下,運算子按運算順序計算 2.基本算術運算子 取餘運算,結果的符號取決於運算子左邊那個數。3.型別轉換 強制轉換 在變數前使用括號進行轉換 int a int 1.2 隱式轉換 系統自...