您的位置:首页 > 编程语言 > C#

C#基础-032 面向对象

2017-08-29 08:51 183 查看
class Person
{
public string name;
public double height;
public double weight;
public int age;
public char gender;
public void Show()
{
Console.WriteLine("{0}今年{1}岁了!性别是{2},身高{3}cm,体重{4}kg",name,age,gender,height,weight);
}
}


class Dog
{
private  string _name;
private int _age;
private char _gender;
public void ShowInformation()
{
Console.WriteLine("{0}今年{1}岁了!它的性别是:{2}",_name,_age,_gender);
}
public Dog()
{

}
public Dog(string name)
{
_name = name;
}
public Dog(string name ,int age):this(name)
{
_age = age;
}
public Dog(string name, int age,char gender) : this(name,age)
{
_gender = gender;
}
//public void SetName(string m_name):this(name)
//{
//    name = m_name;
//}
//public string GetName()
//{
//    return name;
//}
//public void SetAge(int m_age):this(name,age)
//{
//    age = m_age;
//}
//public int GetAge()
//{
//    return age;
//}
//public void SetGender(char m_gender):this(name,age,gender)
//{
//    gender = m_gender;
//}
//public char GetGender()
//{
//    return gender;
//}
}


static void Main(string[] args)
{
//Dog dog = new Dog();//dog是实例,采用Set/Get方法得到兄弟类中的私有字段
//dog.SetName("Jake");
//dog.SetAge(3);
//dog.SetGender('公');
//dog.ShowInformation();
//Dog bigdog = dog;
//bigdog.SetName("小花");
//dog.ShowInformation();//验证了类Class是 引用类型,对象存储在栈中,是地址,而对象的值存储在堆中,堆中一个数据可以对应栈中多个地址
Dog dog1 = new Dog("小黑",2,'母');//Dog类构造方法的重载
dog1.ShowInformation();
Person p = new Person();//p是对象名,Person是类名,采用“对象名.公有字段”的格式对对象赋值
p.name = "时建";
p.age = 25;
p.gender = '男';
p.height = 168.00;
p.weight = 84;
p.Show();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  面向对象 c#