首页 > 其他分享 >重写与重载

重写与重载

时间:2023-10-07 17:34:26浏览次数:22  
标签:Java 重写 子类 重载 父类 方法

关于Java中的重写与重载

方法重载(Overload)

方法重载是Java中一个很重要的概念,它是指在一个类中定义多个同名但参数列表不同的方法。是类名的不同表现形式。Java编译器会根据方法调用时传递的参数来选择调用哪个方法。方法重载的优势在于可以为相似功能的方法提供统一的方法名,方便代码编写和维护。

重载的规则

1.方法名必须相同。

2.参数列表必须不同(个数、类型、参数排列顺序)。

3.方法的返回类型可以相同也可以不同。

4.不能仅依据返回类型的不同来重载方法。

方法重写(Override)

在 Java 中,方法重写是指子类覆盖了父类中具有相同名称、参数列表和返回类型的方法。重写方法的目的是为了改变方法的实现,让子类的方法能够满足自己的需求,并且能够替换父类中的同名方法。

重写的规则

1.方法名称、参数列表和返回类型必须与父类中的方法相同。

2.子类中重写的方法的访问修饰符不能低于父类中被重写的方法的访问修饰符。

3.子类中重写的方法不能抛出比父类中被重写的方法声明的更多的异常类型。

4.子类中无法重写父类中被声明为 final 的方法。

标签:Java,重写,子类,重载,父类,方法
From: https://www.cnblogs.com/cjw2002/p/17746798.html

相关文章

  • 【C++】函数重载 ③ ( 为函数指针赋值重载函数 )
    文章目录一、函数指针回顾1、函数指针概念2、函数指针语法3、代码示例-函数指针示例二、为函数指针赋值重载函数1、为函数指针赋值重载函数2、代码示例-为函数指针赋值重载函数博客总结:重载函数:使用相同的函数名,定义不同的函数参数列表;判定标准:只有函数......
  • 重写equals方法是否需要重写hashcode方法的总结
    面试时经常会被问的一个问题:重写equals方法时是否需要重写hashCode方法,反过来又是怎样?这篇文章将对这个问题进行了一个总结和梳理一、考察的知识点首先需要明确下这个问题到底在考察我们的什么知识点,涉及到equals方法和hashCode方法的问题其实都是在考察把某个类的对象作......
  • C++友元和运算符重载
    友元classbuiding{friendvoidGoodboy(buiding*bui);public:intm_age;private:intm_size;};//全局函数voidGoodboy(buiding*bui){cout<<bui->m_age<<endl;//可以调用public中的m_agecout<<bui->m_size<<endl;//m_size调用需要声明友元}私有......
  • 对象类型和方法的重载
    对象类型和方法的重载今日份学习对象类型的转换,instanceof关键字的使用以及方法重载。l对象类型的转换对象类型的转换主要包括向上转型和向下转型。    i.向上转型(子类→父类)把子类类型的对象直接赋值给父类类型的对象,进而实现按照父类描述子类的结果。父类类型的对象可......
  • C++踩坑--set与重载<
    set与重载<set是有序容器,在定义容器的时候必须要指定key的比较函数。只不过这个函数通常是默认的less,表示小于关系,不用特意写出来:template<classKey,//模板参数是key类型,即元素类型classCompare=std::less<Key>//比较函数>classs......
  • 继承、方法重写
    权限修饰符 方法重写:当子类觉得父类中的某个方法不好用,或者无法满足自己的需求时,子类可以重写一个方法名称、参数列表一样的方法,去覆盖父类的这个方法,这就是方法重写。 子类重写父类方法时,访问权限必须大于或者等于父类该方法的权限(public>protected>缺省)。......
  • 继承的重写
    1.继承中方法的重写重写(override)概念:在继承关系中,方法的名称一样,参数列表也一样重写(overide):方法的名称一样,参数列表【也一样】。也叫方法的覆盖,覆写。重载(overload):方法的名称一样,参数列表【不一样】方法覆盖重写的特点:创建的是子类对象,则优先用子类方法。2.方法覆盖重写的注意事......
  • C模拟CPP的方法重写(override)和多态
    1.所谓override,就是子类中重新实现了父类中的某一方法(子类和父类的同一个方法的方法体不同)2.所谓多态,最显著的一个特点就是父类指针指向不同的子类对象时,运行同一个方法会有不同的行为3.C语言模拟继承时,父类对象必须是子类对象的第一个成员4.理解了C的父类结构体指针子类结......
  • python入门基础(14)--类的属性、成员方法、静态方法以及继承、重载
    上一篇提到过类的属性,但没有详细介绍,本篇详细介绍一下类的属性一、类的属性方法是用来操作数据的,而属性则是建模必不的内容,而且操作的数据,大多数是属性,比如游戏中的某个boss类,它的生命值就是属性(不同级别的boss,有不同的生命值),被攻击方法(不同的攻击,伤害值不同),当boss被攻击......
  • Java学习之路--method--方法重载
    packagecom.chao.method;//Java中都是值传递(Java)和引用类型publicclassDemo02{publicstaticvoidmain(String[]args){intmax=max(40,50);//实参40,50System.out.println("最大的数是"+max);}//比大小形参num1,num2publicstatic......