阐述重载和重写的概念,并简单描述他们的区别
时间: 2023-09-12 17:08:27 浏览: 44
重载(Overloading)和重写(Overriding)都是面向对象编程中的概念。
重载指在同一个类中,可以定义多个同名的方法或函数,但这些方法或函数的参数类型、参数个数或返回值类型必须不同。编译器会根据不同的参数类型或个数来确定要调用哪个方法或函数。
重写指在子类中重新定义与父类同名、同参数的方法,但是重写后的方法必须与父类的方法具有相同的返回类型和参数类型。在调用方法时,会根据对象的类型来确定要调用哪个方法。
区别在于,重载是在同一个类中定义多个同名的方法或函数,而重写是在子类中重新定义与父类同名、同参数的方法。重载的方法或函数必须在参数类型、参数个数或返回值类型上有所不同,而重写的方法或函数必须与父类的方法具有相同的返回类型和参数类型。在调用方法时,重载会根据不同的参数类型或个数来确定要调用哪个方法,而重写会根据对象的类型来确定要调用哪个方法。
相关问题
重写和重载概念的区别
重写(Override)和重载(Overload)是Java中的两个概念,它们有着不同的含义和使用场景。
重写指的是在子类中定义一个与父类相同的方法,但是方法的实现可以不同。重写的两个方法名相同,方法参数的个数也相同,但一个方法在父类中,另一个在子类中。例如,父类LaoWang有一个write()方法(无参),方法体是写一本《基督山伯爵》;子类XiaoWang重写了父类的write()方法(无参),但方法体是写一本《茶花女》。这样,当我们调用write()方法时,如果是通过子类的对象调用,将会执行子类中重写的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [面试官:Java的重写和重载有什么区别?](https://blog.csdn.net/qing_gee/article/details/104423979)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
描述 Java 中的重载和重写
重载和重写是Java中实现多态性的两种方式。
重载是指在一个类中定义多个方法,它们具有相同的名称但参数列表不同。重载方法可以有不同的返回类型,但不能仅仅根据返回类型进行区分。重载发生在编译时,根据方法的参数列表来决定调用哪个方法。
重写是指子类重新定义父类中已有的方法。重写方法必须具有相同的名称和参数列表,并且返回类型要么相同,要么是父类方法返回类型的子类。重写方法的访问权限要大于或等于父类方法的访问权限。在重写方法时,子类方法不能比父类方法声明更多的异常。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)