标签:style blog http io color ar os 使用 sp
今天学习的还好吧,但是感觉太陌生啦,或许没有接触的人都感觉这个太抽象,但是其实不是啦,要理解啦就可以把构造函数好好地使用啦,但是在写程序中出的问题还是难免的·
举例:
enum Gender { 男, 女 } class Student { public Student() { } string name; public string Name { set; get; } int age=18; //public int Age { set; get; } Gender gender; public Gender Gender { set; get; } int chinese; int math; int english=0; public Student( string n,int a,Gender g,int c,int m,int e) { name = n; age = a; gender = g; chinese = c; math = m; english = e; } public void say() { Console.WriteLine("名字为{0},今年{1}岁了,{2},三科成绩为{3},{4},{5}", Name, age, Gender,chinese,math,english); } } class Program { static void Main(string[] args) { Student stu = new Student("张三", 18, Gender.男, 90, 85, 80); stu.say(); Console.ReadKey(); } }
这就是构造函数的方法,另外还有个就是给字段赋初值,下面这样也可以实现传参:
从结果看: 结果输出了年龄18岁,即为初值。
2.写一个Ticket类,有一个距离属性(本属性只读,在构造方法中赋值),不能为负数,有一个价格属性,价格属性只读,并且根据距离distance计算价格Price (1元/公里):
有一个方法,可以显示这张票的信息.90公里90块钱
class ticket { public ticket(int d) { if (distance < 0) { distance = 0; } this.distance = d; } int distance; public int Distance { get { return distance; } } double price = 500; public double Price { get { if (distance > 0 && distance <= 100) { return distance; } else if (distance > 100 && distance <= 200) { return distance * 0.95; } else if (distance > 200 && distance <= 300) { return distance * 0.90; } else { return distance * 0.80; } } } } } class Program { static void Main(string[] args) { ticket a = new ticket(155); Console.WriteLine(a.Price); Console.ReadKey(); } }
这就是构造方法。
简单的说下,就是前面有-的都是字段,+的为属性和方法。
enum Gnder { } class Program { static void Main(string[] args) { Console.WriteLine("名字"); Length(Console.ReadLine()); Console.ReadKey(); } static void Length(string name) { Console.WriteLine(name.Length); } }
标签:style blog http io color ar os 使用 sp
原文地址:http://www.cnblogs.com/dyxd/p/4098024.html