重载、覆写和继承

  重载:在一个类中允许重命名方法,允许定义多个重名的方法.当两个方法的方法名相同,但是参数不同时,或者参数个数不同,或者参数顺序不同,或者参数类型不同,那么我们就把这样的方法称为方法重载.

  函数重载的三个特征:
  a.函数在同一个类当中
  b.函数的函数名相同
  c.函数的参数不同

string test()
{
Console.WriteLine("Hello world");
//也可以这样用:test("Hello world");
}

string test(string msg)
{
Console.WriteLine(msg);
}


  覆写override:当子类的方法与父类的方法完全一样时,这样的两个方法我们称为覆写,是针对有继承关系的类与类之间进行方法的覆写,即子类覆写父类中的方法,当子类覆写父类中的某个方法时,其修饰符必须是子类权限大于或等于父类权限.但是父类的构造方法不能被子类覆写,通过覆写可以改变已有程序的功能,可以展现出多种不同的状态,从而能体现程序的多态性,能让程序功能更加个性化.
  

  覆写override(对父类的函数不满意的,在子类中重新写):
1.在具有(父子关系的两个子类)当中
2、父类和子类各有一个函数,这两个函数的定义(返回值类型、函数名和参数列表)完全相同


  如果子类只是在父类增加了一些方法,可以用super.XXX()调用父类的成员函数XXX。


  1、super(); this();
  调用父类构造函数 调用本类构造函数

  super.XXX(); this.XXX();
  调用父类的成员函数 调用本类成员函数

 

 

  与重载不同:
  重载是在(一个类里)面函数名相同,参数列表不同

  复写是父子两个类中两个函数的定义(返回值类型、函数名和参数列表)完全相同

  重载和覆写都是针对方法而言的.

  

  继承extends:
  1、共同的代码(变量,函数)放到父类,减少类定义的重复代码
  2、extend代表扩展,子类可以添加自己的成员变量、函数

 

 

 

posted @ 2014-01-14 20:46  LarryLawrence  阅读(920)  评论(0编辑  收藏  举报