【编程基础】——方法重载、重写、重构

来源:互联网 发布:utc时间转换 c 语言 编辑:程序博客网 时间:2024/05/16 12:05

方法重载:

方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。

用方法重载,就能更多的满足更多的情况。比如:

<span style="font-size:18px;"><span style="font-size:18px;"> class Cat    {        private string name = "";        public Cat(string name)        {            this.name = name;        }        //public Cat()        //{        //    this.name = "无名";        //}        public string Shout()        {            return "我的名字叫" + name + "喵";        }    }</span></span>

当未重载Cat没参数的情况,实例化时:Cat  a=new Cat();  就会报错。



方法重写:

首先了解虚方法:为了使子类的实例完全接替来自父类的类成员,父类必须将该成员声明为虚拟的,这需要在改成员的返回类型之前添加virtual关键字。

然后子类使用override关键字,将父类的实现,替换为自己的实现。

<span style="font-size:18px;"><span style="font-size:18px;"> class Animal    {        public virtual string Shout()//有virtual表示此方法为虚方法,可以被子类重写        {            return "";        }    }</span></span>

<span style="font-size:18px;"><span style="font-size:18px;"> class Dog:Animal     {        public override string Shout()//方法重写        {            string result = "";            for (int i = 0; i < shoutNum; i++)                result += "汪";            return"我的名字叫"+name+" "+result ;        }    }</span></span>

同样,子类实现父类的实现,那方法重写和直接继承有什么不同:

继承是原封不动的,全都照搬,无法体现叫声的多样性。即当针对父类的方法,在子类中需要有些修改的时候,就需要使用方法重写了。


重构:

重构(Refactoring)就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。

软件在开发过程中,肯定会有所变动,很多因素是在计划阶段不能很好发现的,只有在开发过程中,才会发现一些更好地分类方法,这时就应重构,使程序更完善。


重载、重写、重构。放在一起对比一下更容易理解.......这些基础,应该很好的把握.....

1 0
原创粉丝点击