---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------
1,为什么要使用继承
和使用类是为了代码重用一样,使用继承也是为了代码重用。在定义对象的模板类时,会发现好多类有相同的属性和方法,若一个一个定义,同样很麻烦,
于是引入继承的概念,我们将类共有的那些属性和方法定义为一个类,称之为父类。当我们定义类时,便可以代码重用,直接使用父类中已经定义好的公共的属性 和方法,只需定义自己特有的成员即可,这个类便称之为子类。
2 继承的相关定义
class 父类名
{
共有字段,
共有属性
共有方法
父类的构造方法(最好有两个:有参和无参 base(),base(参数))
}
class 子类名
{
特有字段,
特有属性
特有方法,重写及隐藏父类方法
子类的构造方法
sub()[:base()](有和无一个意思)
sub(参数):base(参数)
}
例子:
class Person { string name; int age; pulic string Name { get方法 set方法 } pulic string Age { get方法 set方法 } //被子类隐藏的基类方法 public void SayHello() { 实现代码 } //被子类重写的虚方法 public virtual void Walk() { 实现代码 } //最好定义两个构造方法,有参的和无参的(还能重载) public Person() { 实现代码 } public Person(参数) { 实现代码 } }
class Teacher
{ int yearofservice; pubic YearOfService { get方法 set方法 } //隐藏基类方法(当子类方法与父类方法重名时使用) public new void SayHello() { 实现代码 } //重写父类方法(子类方法将父类方法覆盖掉,一般用于多态) public override void Walk() { 实现代码 } public Teacher () { } //子类构造方法调用父类构造方法 public Teacher(参数):base(参数) { } }
---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------