2025-11-20 05:58:30
重载就是同一个类里写多个同名方法,就像同一个老师教不同科目。比如写个加法功能,可以写整数加整数,浮点加浮点,还能写字符串拼接。编译器根据调用时给的参数自动选对的方法,就像点菜时说"来碗牛肉面",后厨就知道用牛肉料包。
为什么说重载属于多态呢?因为多态就是"一个名字多种用法",而重载正好是名字相同参数不同。比如Java里统计重载使用率,前年数据显示每个Java类平均有2.3个重载方法,说明开发者常用它简化代码。重载和多态覆盖的区别在于,覆盖是子类改写父类方法,重载是同一类里多写方法。就像工厂流水线,重载是给不同零件准备专用模具,覆盖是让子零件共用父零件的模具。比如写个计算器类,有int加int,double加double,还有String拼接,这三个方法编译时就能自动区分,这就是重载多态化的表现。不过要注意,像int a=10.5这种类型不匹配的情况,调用就会报错,说明参数类型必须严格匹配才能生效。
本题链接: