39.C#--面對對象構造函數及構造函數繼承使用
阿新 • • 發佈:2019-04-28
當前 調用 數據 say 修飾符 har 進行 || 初始 //一.新建Person類
namespace _39.面對對象構造函數及構造函數繼承使用
{
public class Person
{
//字段、屬性、方法、構造函數
//字段:存儲數據
//屬性:保護字段,對字段的取值和設值進行限定
//方法:描述對象的行為
//構造函數:初始化對象(給對象的每個屬性依次的賦值)
//類中的成員,如果不加訪問修飾符,默認都是private
private string _name; //字段
public string Name //屬性
{
get { return _name; }
set { _name = value; }
} Console.WriteLine(); //換行
Person.SayHelloTwo(); //調用靜態方法
Console.ReadKey();
}
}
}
namespace _39.面對對象構造函數及構造函數繼承使用
{
public class Person
{
//字段、屬性、方法、構造函數
//字段:存儲數據
//屬性:保護字段,對字段的取值和設值進行限定
//方法:描述對象的行為
//構造函數:初始化對象(給對象的每個屬性依次的賦值)
//類中的成員,如果不加訪問修飾符,默認都是private
private string _name; //字段
public string Name //屬性
{
get { return _name; }
set { _name = value; }
}
public int _age; //字段 public int Age //屬性 { get { return _age; } set {if(value<=0 || value >= 100) //對年齡賦值進行設定, { //小於0或大於100都默認取0
value = 0;
}
_age = value; }
}
public char _gender; //字段 public char Gender //屬性 { get { return _gender; } set { if(value!=‘男‘ || value != ‘女‘) //對賦值進行限定 { // 如果輸入不是男或女的,默認都取男 value = ‘男‘; } _gender = value; } } public int _id; //字段 public int Id //屬性 { get { return _id; } set { _id = value; } } //構造函數:1、沒有返回值 連void也沒有 //2、構造函數的名稱跟類名一樣 public Person(string name,int age,char gender,int id) //構造函數,main函數傳參過來 { //this:當前類的對象 //this:調用當前類的構造函數 this.Name = name; //this.Name指這個類中的屬性值,將main函數傳過來的值賦給屬性值 this.Age = age; //同上 this.Gender = gender; this.Id = id; } public Person(string name,char gender) : this(name,0,gender,0) { } //繼承上面那個構造函數 public void SayHellOne() //方法一 { Console.Write("我是{0},我今年{1}歲了,我是{2}生,我的學號是{3}", this.Name, this.Age, this.Gender, this.Id); } public static void SayHelloTwo() //方法二, 靜態函數只能夠訪問靜態成員 { Console.WriteLine("我是靜態的方法!"); } public Person() { } }
}
二:main函數調用
namespace _39.面對對象構造函數及構造函數繼承使用
{
class Program
{
static void Main(string[] args)
{
//39.面對對象構造函數及構造函數繼承使用
Person lsPerson = new Person("張三",18,‘男‘,100); //新建對象,調用構造一方法
lsPerson.SayHellOne();
Console.WriteLine(); //換行
Person xlPerson = new Person("小蘭", ‘女‘); //新建對象,調用構造二方法
xlPerson.SayHellOne();
Person.SayHelloTwo(); //調用靜態方法
Console.ReadKey();
}
}
}
39.C#--面對對象構造函數及構造函數繼承使用