notes:
資料private型別,大部分方法public型別;
如果有繼承或者相互引用,注意資料的公有還是私有,保證資料的唯讀性質;
c#不能夠像c++一樣在資料宣告時呼叫建構函式,必須使用myclass temp = new myclass()來呼叫建構函式;
c#不支援多重繼承關係, 也就是說,乙個派生類不允許有多個基類。簡單點就是,父親可能有好多兒子(父類可以派生出許多子類),但是乙個孩子只能有乙個爸爸(子類不允許多重繼承關係);
c#和其他物件導向一樣,過載,多型,虛函式,抽象類這些特性都有;
過載和c++中的過載毫無區別,只有乙個問題是在過載大小比較運算子(=, >, <=, ==, !=)的時候,必須成對的過載;
虛函式需加virtual宣告,派生類中需要重寫,並且新增override宣告;
抽象函式需加abstract宣告,並且基類中沒有執行**,只能在繼承類中新增;
如果需要傳出多個值,需要用到ref宣告或out宣告;
ref宣告的物件必須提前初始化;
out宣告的物件不需要提前初始化;
如果類中有靜態物件,可以使用靜態建構函式對靜態物件進行賦值操作。
example:
elemtype.cs
複製** **如下:
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
namespace test_class
public elementtype(int _v)
public void disp()
", value);
}public void edit(int _v)
public int reff()
}class package
///
/// 建構函式
///
/// x
&nbswww.cppcns.comp; /// y
public package(int _x, int _y)
public void disp()
", this.x.reff());
console.writeline("\ty vaule is ", this.y.reff());
console.writeline();
}///
/// 修改值
///
/// x
/// y
tphkj; public void modify(int _x, int _y)
public void copyto(ref package p)
程式設計客棧; }
}program.cs
複製** **如下:
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
namespace test_class
}}
本文標題: c#類的使用示例
本文位址:
C 類繼承示例
c 的子類與孫子類都實現了虛函式時,孫子類的實現會覆蓋掉子類的實現。繼承的最主要的應用就是把不同的類放到乙個陣列中,然後遍歷呼叫同名函式。例項如下 include include include using namespace std class parent virtual void printn...
C 類的繼承以及虛函式的使用小示例
最近在複習c 基礎知識,感覺學的時候學的相當不走心,好多知識不甚了解。如今回過頭來認真的重新學一遍,發現了好多華點哦。算是重新學習吧,還帶點 溫故而知新 的意味。include include includeusing namespace std class person 無引數建構函式,設定預設值...
C 使用memcached示例
1安裝libevent ubuntu apt get install 名稱 suse yast2 i 名稱 centos yum install 名稱 2安裝memcached ubuntu apt get install 名稱 suse yast2 i 名稱 centos yum install ...