请问重载overload,覆盖override,重写overwrite,这三者之间有什么区别呢?
发布网友
发布时间:2022-05-18 18:05
我来回答
共2个回答
热心网友
时间:2023-10-22 09:09
两者吧,不是三者吧,重载是方法名相同参数不同;覆盖重写是另外一个概念了,如果是继承关系,子类可以覆盖重新覆盖方法,如果是接口,实现类必须覆盖重新接口的抽象方法,如果是抽象类,子类也必须重新抽象方法,或者子类也是一个抽象类
热心网友
时间:2023-10-22 09:09
a. overload,将语义相近的几个函数用同一个名字表示,但是参数和返回值不同,这就是函数重载
特征:相同范围(同一个类中)、函数名字相同、参数不同、virtual关键字可有可无
b. override,派生类覆盖基类的虚函数,实现接口的重用
特征:不同范围(基类和派生类)、函数名字相同、参数相同、基类中必须有virtual关键字(必须是虚函数)
c. overwrite,派生类屏蔽了其同名的基类函数
特征:不同范围(基类和派生类)、函数名字相同、参数不同或者参数相同且无virtual关键字
有关于编程的基础知识,你可以看黑马程序员社区的学习贴,都会解决的!!