7、构造函数
作用:帮助我们初始化对象(给对象的每个属性依次的赋值)
构造函数是一个特殊的方法:
1)、构造函数没有返回值,连void也不能写。
2)、构造函数的名称必须跟类名一样。
创建对象的时候会执行构造函数
构造函数是可以有重载的。
***
类当中会有一个默认的无参数的构造函数,当你写一个新的构造函数之后,不管是有参数的还是
无参数的,那个默认的无参数的构造函数都被干掉了。
8、new关键字
Person zsPerson=new Person();
new帮助我们做了3件事儿:
1)、在内存中开辟一块空间
2)、在开辟的空间中创建对象
3)、调用对象的构造函数进行初始化对象
9、this关键字
1)、代表当前类的
对象
调用方法
-
namespace _01面向对象
-
{
-
public class Person
-
{
-
private string _name;
-
public string Name
-
{
-
//当你输出属性的值得时候 会执行get方法
-
get { return _name; }
-
//当你给属性赋值的时候 首先会执行set方法
-
set { _name = value; }
-
}
-
private int _age;
-
public int Age
-
{
-
get { return _age; }
-
set
-
{
-
-
if (value < 0 || value > 100)
-
{
-
value = 0;
-
}
-
-
_age = value;
-
}
-
}
-
private char _gender;
-
public char Gender
-
{
-
get
-
{
-
if (_gender != '男' && _gender != '女')
-
{
-
return _gender = '男';
-
}
-
return _gender;
-
-
}
-
set { _gender = value; }
-
}
-
public void CHLSS()
-
{
-
Console.WriteLine("我叫{0},我今年{1}岁了,我是{2}生,我可以吃喝拉撒睡哟~~~", this.Name, this.Age, this.Gender);
-
while (true)
-
{
-
-
};
-
}
-
}
-
}
2)、在类当中显示的调用本类的构造函数 :this
-
namespace _04面向对象练习
-
{
-
public class Student
-
{
-
//字段、属性、方法、构造函数
-
-
//析构函数 构造函数
-
-
-
-
//当程序结束的时候 析构函数才执行
-
//帮助我们释放资源
-
//GC Garbage Collection
-
~Student()
-
{
-
Console.WriteLine("我是析构函数");
-
}
-
-
-
public Student(string name, int age, char gender, int chinese, int math, int english)
-
{
-
this.Name = name;
-
this.Age = age;
-
this.Gender = gender;
-
this.Chinese = chinese;
-
this.Math = math;
-
this.English = english;
-
}
-
public Student(string name, int chinese, int math, int english):this(name,0,'c',chinese,math,english)
-
{
-
//this.Name = name;
-
//this.Chinese = chinese;
-
//this.Math = math;
-
//this.English = english;
-
}
-
public Student(string name, int age, char gender)
-
{
-
this.Name = name;
-
if (age < 0 || age > 100)
-
{
-
age = 0;
-
}
-
this.Age = age;
-
this.Gender = gender;
-
}
-
-
public Student()
-
{
-
-
}
-
-
-
-
private string _name;
-
public string Name
-
{
-
get { return _name; }
-
set { _name = value; }
-
}
-
private int _age;
-
public int Age
-
{
-
get { return _age; }
-
set
-
{
-
if (value < 0 || value > 100)
-
{
-
value = 0;
-
}
-
_age = value;
-
}
-
}
-
private char _gender;
-
public char Gender
-
{
-
get
-
{
-
if (_gender != '男' && _gender != '女')
-
{
-
return _gender = '男';
-
}
-
return _gender;
-
}
-
set { _gender = value; }
-
}
-
private int _chinese;
-
public int Chinese
-
{
-
get { return _chinese; }
-
set { _chinese = value; }
-
}
-
private int _math;
-
public int Math
-
{
-
get { return _math; }
-
set { _math = value; }
-
}
-
private int _english;
-
public int English
-
{
-
get { return _english; }
-
set { _english = value; }
-
}
-
-
-
public void SayHello()
-
{
-
Console.WriteLine("我叫{0},我几年{1}岁了,我是{2}生", this.Name, this.Age, this.Gender);
-
}
-
-
public void ShowScore()
-
{
-
Console.WriteLine("我叫{0},我的总成绩是{1},平均成绩是{2}", this.Name, this.Chinese + this.Math + this.English, (this.Chinese + this.Math + this.English) / 3);
-
}
-
-
}
-
}
阅读(501) | 评论(0) | 转发(0) |