定義三維向量結構體Vector3,字段有x,y,z? 創建該結構體變量并賦值,輸出該結構體變量中的成員的值
字段 ?屬性 方法 ? ?結構體不能被繼承
struct Vector3 {
? ? ? ? ? ?public float x;? ? ? ? //public 修飾 為公有? ? ? 不能對自斷進行初始化 ? ? Protect修飾當前類和派生類(不能使用)
? ? ? ? ? ?public float y;
? ? ? ? ? ?public float z;
自定義構造方法
? ? ? ? ? ? public Vector3(float x,float y, float z){
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.x = x;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.y = y;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.z = z;
? ? ? ? ? ? }
? ? ? ? ? ? public Vector3 (float x){ ? ? ? ? ? ? ? ? ?//根據x來定義y,z
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?this.x = x;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?this.y = 1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.z = 1;
? ? ? ? ? ? ?}
? ? ? ? ? ? ?public Vector3 (float x,float y){ ? ? ? //根據x,y來定義
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.x = x;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.y = y;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.z = 3;
? ? ? ? ? ? ? ?}
}
初始化一個結構體類型的變量
默認構造方法
Vector3 position = new Vector3 ();
position.x = 10;? ? ? ? ? ? //對結構體里的字段進行賦值
position.y = 20;
position.z = 30;
// float a = position.x;? ? ? ? ? //? a = 10; x賦值給a
Console.WriteLine (position.x + "," + position.y + "," + position.z);
自定義構造方法
Vector3 localPosition = new Vector3(10,20,30);
Console.WriteLine ("x={0}",localPosition.x);
Vector3 location = new Vector3 (10,20);
Console.WriteLine ("z={0}",location.z);
//靜態成員 靜態類 ? ? ? ? ? ? ? ? ? ? ? 17_8_30
//用static修飾的成員稱為靜態成員
//只能用類來調用? 只要通過類名就能調用
//靜態方法只能調用靜態成員
//不允許實例化 不能有實例構造方法
//只包括靜態成員 和const修飾的常量
//靜態構造只走一次? 第一次調用或創用的時候
//密封
//不能重載
public class Manager ? ? ? ? ?//如果類為靜態類 不能有非靜態成員
{
//單例設計模式
public string position;//職位
public Person assistant;//助理
public int numbers;//管理人數
//內建靜態實例
private static Manager instance;
//私有化構造方法
private Manager ()
{
}
//創建靜態實例的靜態只讀屬性
public static Manager Instance{
? ? ? ? ? ? get{
? ? ? ? ? ? ? ? ? ? ? if (instance == null) {
? ? ? ? ? ? ? ? ? ? ? ? ? instance = new Manager();
? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ?return instance;
? ? ? ? ? ? ? }
}
//對象方法
//裁員
public void ReduceStuff(){
? ? ? ? ? ?numbers--;
}
//招聘
public void Recruit(){
? ? ? ? ? ?numbers++;
}
}