C# 静态非静态 构造函数 析构函数 This关键字

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Threading.Tasks;  
  6.   
  7. namespace _03静态和非静态的区别  
  8. {  
  9.     class Program  
  10.     {  
  11.         static void Main(string[] args)  
  12.         {  
  13.             //调用实例成员  
  14.             Person p = new Person();  
  15.             p.M1();//实例方法  
  16.             Person.M2();//静态方法  
  17.            // Student s = new Student();  
  18.   
  19.   
  20.             Console.WriteLine();  
  21.             Console.ReadKey();  
  22.         }  
  23.     }  
  24. }  
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Threading.Tasks;  
  6.   
  7. namespace _04面向对象练习  
  8. {  
  9.     public class Student  
  10.     {  
  11.         //字段、属性、方法、构造函数  
  12.   
  13.        //析构函数  构造函数  
  14.   
  15.   
  16.   
  17.         //当程序结束的时候  析构函数才执行  
  18.         //帮助我们释放资源  
  19.         //GC Garbage Collection  
  20.         ~Student()  
  21.         {  
  22.             Console.WriteLine("我是析构函数");  
  23.         }  
  24.   
  25.   
  26.         public Student(string name, int age, char gender, int chinese, int math, int english)  
  27.         {  
  28.             this.Name = name;  
  29.             this.Age = age;  
  30.             this.Gender = gender;  
  31.             this.Chinese = chinese;  
  32.             this.Math = math;  
  33.             this.English = english;  
  34.         }  
  35.         public Student(string name, int chinese, int math, int english):this(name,0,'c',chinese,math,english)  
  36.         {  
  37.             //this.Name = name;  
  38.             //this.Chinese = chinese;  
  39.             //this.Math = math;  
  40.             //this.English = english;  
  41.         }  
  42.         public Student(string name, int age, char gender)  
  43.         {  
  44.             this.Name = name;  
  45.             if (age < 0 || age > 100)  
  46.             {  
  47.                 age = 0;  
  48.             }  
  49.             this.Age = age;  
  50.             this.Gender = gender;  
  51.         }  
  52.   
  53.         public Student()  
  54.         {   
  55.               
  56.         }  
  57.   
  58.   
  59.   
  60.         private string _name;  
  61.         public string Name  
  62.         {  
  63.             get { return _name; }  
  64.             set { _name = value; }  
  65.         }  
  66.         private int _age;  
  67.         public int Age  
  68.         {  
  69.             get { return _age; }  
  70.             set  
  71.             {  
  72.                 if (value < 0 || value > 100)  
  73.                 {  
  74.                     value = 0;  
  75.                 }  
  76.                 _age = value;  
  77.             }  
  78.         }  
  79.         private char _gender;  
  80.         public char Gender  
  81.         {  
  82.             get  
  83.             {  
  84.                 if (_gender != '男' && _gender != '女')  
  85.                 {  
  86.                     return _gender = '男';  
  87.                 }  
  88.                 return _gender;  
  89.             }  
  90.             set { _gender = value; }  
  91.         }  
  92.         private int _chinese;  
  93.         public int Chinese  
  94.         {  
  95.             get { return _chinese; }  
  96.             set { _chinese = value; }  
  97.         }  
  98.         private int _math;  
  99.         public int Math  
  100.         {  
  101.             get { return _math; }  
  102.             set { _math = value; }  
  103.         }  
  104.         private int _english;  
  105.         public int English  
  106.         {  
  107.             get { return _english; }  
  108.             set { _english = value; }  
  109.         }  
  110.   
  111.   
  112.         public void SayHello()  
  113.         {  
  114.             Console.WriteLine("我叫{0},我几年{1}岁了,我是{2}生"this.Name, this.Age, this.Gender);  
  115.         }  
  116.   
  117.         public void ShowScore()  
  118.         {  
  119.             Console.WriteLine("我叫{0},我的总成绩是{1},平均成绩是{2}"this.Name, this.Chinese + this.Math + this.English, (this.Chinese + this.Math + this.English) / 3);  
  120.         }  
  121.   
  122.     }  
  123. }  
shashou47

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: