namespace 对象的引用
{
class Person//所有类都是object的子类。这里的person也是object的子类
{
public Person(int age, string name)//构造函数
{
this.Age = age;
this.Name = name;
}
public Person()//空构造函数
{
}
public int Age
{
get;
set;
}
public string Name
{
set;
get;
}
public virtual void SayHello()
{
Console.WriteLine("我的年龄是{0},我的姓名是{1}", Age, Name);
}
public override string ToString()
{
return "Name=" + Name + ":Age=" + Age;
}
}
class Chinese : Person//chinese类是从person类继承的
{
public string HuKou { set; get; }//属性
public void KongHu()//方法
{
Console.WriteLine("使用双节棍");
}
public override void SayHello()
{
Console.WriteLine("小生虚度光阴{0}载",Age);
//base.SayHello();
}
}
class BeiJingRen : Chinese
{
}
class Korea : Person
{
public Korea(int age, string name)//子类调用父类的构造函数方法
: base(age, name)
{
}
public override void SayHello()
{
Console.WriteLine("思密达:{0}", Name);
}
public void Paocai()
{
}
}
class Program
{
static void Main(string[] args)
{
/*
int i1 = 10;
int i2 = i1;
Console.WriteLine("i1={0},i2={1}",i1,i2);
i1++;
Console.WriteLine("i1={0},i2={1}",i1,i2);
*/
/*
Chinese c1 = new Chinese();
c1.Age = 25;
Chinese c2 = c1;
Console.WriteLine("c1.Age={0},c2.Age={1}",c1.Age,c2.Age);
c1.Age++;
Console.WriteLine("c1.Age={0},c2.Age={1}",c1.Age,c2.Age);
*/
/*Chinese c1 = new Chinese();//new出来的才算是对象 这里只有c1和c3是对象
c1.Age = 25;
Chinese c2 = c1;
Console.WriteLine("c2.Age={0}",c2.Age);
Chinese c3 = new Chinese();
c3.Age = 50;
c2 = c3;
Console.WriteLine("c3.Age={0}", c3.Age);*/
Chinese c1 = new Chinese();
c1.Age = 25;
Console.WriteLine("c1.Age={0}",c1.Age);
IntAge(c1);
Console.WriteLine("c1.Age={0}",c1.Age);
Console.ReadKey();
}
static void IntAge(Chinese c)
{
c.Age++;
}
}
}
主程序里的每一段程序单独运行 从结果中看出区别;