首页 > 其他分享 >2024.2.8&2024.2.9

2024.2.8&2024.2.9

时间:2024-02-09 23:33:04浏览次数:29  
标签:2024.2 异常 子类 方法 声明 父类 重写

1.重写是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不改变。即外科不变,核心重写。
重写的好处在于,子类可以根据需求,定义特定于自己的行为。也就是说子类可以根据需求实现父类的方法。
重写方法不能抛出新的检查异常或者比被重写方法更加宽泛的异常。例如:父类的一个方法申明了一个IOException,但是在重写这个方法的时候不能抛出Exception异常,因为Exception是IOException的父类,只能抛出IOException或者IOException的子类异常。

2.方法重写规则
·参数列表与被重写方法的参数列表必须完全相同
·返回类型可以与被重写方法的返回类型不相同但是必须是父类返回值的派生类
·访问权限不能比父类中被重写的方法的访问权限更低。例如:如果一个父类中的方法被声明为public,子类中重写方法就不能声明为protected
·父类的成员方法只能被它的子类重写
·声明为final的方法不能被重写
·声明为static的方法不能被重写,但是可以再次被声明
·子类和父类在同一个包中,那么子类可以重写父类所有方法,除了声明为private和final的方法
·子类和父类不在同一个包中,那么子类只能重写父类声明为public和protected的非final方法
·重写的方法能够抛出任何非强制异常,无论被重写的方法是否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比重写方法声明的更广泛的强制性异常,反之则可以
·构造方法不能被重写
·如果不能继承一个类,则不能重写该类的方法

标签:2024.2,异常,子类,方法,声明,父类,重写
From: https://www.cnblogs.com/KJHo/p/18012687

相关文章

  • (C语言)代码学习||2024.2.6||题目是codewars上的【 IP Validation】
    C语言#sscanf#代码学习#codewars题目链接:IPValidation|Codewars代码如下:#include<stdio.h>intis_valid_ip(constchar*addr){unsignedn[4],i,nc;//Mustbe4integersseparatedbydots:if(sscanf(addr,"%d.%d.%d.%d%n",&n[0],&n......
  • 2024.2.6每日一题
    LeetCode魔塔游戏LCP30.魔塔游戏-力扣(LeetCode)题目描述小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量......
  • 2024.2.6
    1.Java不支持多继承但支持多重继承2.继承的特性·子类拥有父类非private的属性、方法·子类可以拥有自己的属性和方法,即子类可以对父类进行扩展·Java的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如B类继承A类,C类继承B类,所以按照关系就......
  • (python)代码学习||2024.2.4||题目是codewars的【 All Balanced Parentheses】
    题目链接:https://www.codewars.com/kata/5426d7a2c2c7784365000783/pythondefbalanced_parens(n):'''Toconstructallthepossiblestringswithnpairsofbalancedparenthesesthisfunctionmakesuseofastackofitemswiththefoll......
  • 2024.2.5寒假每日总结27
    LeetCode跳跃游戏VI1696.跳跃游戏VI-力扣(LeetCode)题目描述给你一个下标从0开始的整数数组nums和一个整数k。一开始你在下标0处。每一步,你最多可以往前跳k步,但你不能跳出数组的边界。也就是说,你可以从下标i跳到[i+1,min(n-1,i+k)]包含两个端点的任......
  • (python)做题记录||2024.2.4||题目是codewars的【 All Balanced Parentheses】
    题目链接:https://www.codewars.com/kata/5426d7a2c2c7784365000783/python我的解决方案:defbalanced_parens(n):#Yourcodehere!used_l=[Falseforiinrange(n)]used_r=[Falseforiinrange(n)]answers=[]defprocess(answer):iflen(a......
  • 2024.1.21 ~ 2024.2.2 集训总结
    集训大纲Week1:图论:拓扑排序、欧拉回路、二分图、最小生成树数据结构:并查集、堆、单调队列week2:图论:连通性数据结构:线段树图论拓扑排序将DAG上的点以关联性进行排序,得到一个有关联的枚举顺序。有了这种特别的枚举顺序,使得在DAG上DP的转移过程更加合理且有......
  • 2024.2.4寒假每日总结26
    算法题:292.Nim游戏-力扣(LeetCode)LeetCodeNim游戏292.Nim游戏-力扣(LeetCode)题目描述你和你的朋友,两个人一起玩Nim游戏:桌子上有一堆石头。你们轮流进行自己的回合,你作为先手。每一回合,轮到的人拿掉1-3块石头。拿掉最后一块石头的人就是获胜者。......
  • (2024.1.29-2024.2.4)C语言学习小结
    本周主要围绕《HeadfirstC》这本书展开C语言学习,按照计划,我学习了的内容。基本内容这周学习的内容像是上学期最后的内容的扩展、延申、深入,高级函数那块有点绕但慢慢啃下来还可以接受。以下是思维导图:遇到的问题与解决、经验教训等问题0(上周的问题这周才解决):看到书里......
  • 2024.2.4日报
    今天完成了信息化领域热词分析,以下是截图为证首先是用python爬取数据、清洗数据、保存到数据库  在这个过程中有一些词条查不到对应的百度解释于是直接在数据库中用delete删除了另外存储到数据库中可能会乱序,进行了代码的调整 然后是部署springboot和vue项目对他......