news 2026/8/6 16:04:41

【期末复习02】分析题和改错题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【期末复习02】分析题和改错题

文章目录

  • 一、程序分析题(20)
    • 项目结构
    • 分析题01
    • 分析题02
    • 分析题03
    • 分析题04
  • 二、程序改错题(20分)
    • 项目结构
    • 改错题01
    • 改错题02
    • 改错题03
    • 改错题04
    • 改错题05
    • 改错题06

一、程序分析题(20)

项目结构

分析题01

代码

packageProgramAnalysis;/** * 写出这段代码在干什么: * 1、定义一个二维数组arr,包含3行3列的整数。 * 2、使用嵌套循环遍历数组,将所有元素累加起来。 * 3、打印出累加的结果。 */publicclassT1{publicstaticvoidmain(String[]args){int[][]arr={{10,20,30},{11,21,31},{12,22,32}};intsum=0;for(inti=0;i<arr.length;i++){for(intj=0;j<arr[i].length;j++){sum+=arr[i][j];}}System.out.println("sum="+sum);}}

运行结果

分析题02

代码

packageProgramAnalysis;/** * 对数字54321的各位进行处理并累加计算,把数字每一位与递减的t值相加后累计 */publicclassT2{publicstaticvoidmain(String[]args){intA=54321,sum=0,t=10;while(t>0){sum+=A%10+t;A/=10;t/=10;}System.out.println(sum);}}

运行结果

分析题03

代码

packageProgramAnalysis;/** * 演示Java的异常处理机制:通过自定义除法方法主动抛出除数为零的算术异常, * 再在main方法中用try-catch捕获不同类型的异常, * 同时利用finally块保证特定代码无论异常是否发生都会执行。 */publicclassT3{publicstaticvoidmain(String[]args){try{intresult=divideNumbers(4,0);System.out.println("计算结果 = "+result);}catch(ArithmeticExceptione){System.out.println("捕获算术异常: "+e.getMessage());return;}catch(Exceptione){System.out.println("捕获其他异常: "+e.getMessage());return;}finally{System.out.println("执行finally块");}System.out.println("程序继续执行");}privatestaticintdivideNumbers(intdividend,intdivisor){if(divisor==0){thrownewArithmeticException("除数不能为零");}returndividend/divisor;}}

运行结果

分析题04

代码

packageProgramAnalysis;/** * 实现了自定义类的封装、对象实例化,并通过重写toString()改变了对象打印时的输出结果 */publicclassT4{publicstaticvoidmain(Stringargs[]){Dolldoll=newDoll("Kitty",2);System.out.println(doll);}}classDoll{Stringname;intage;publicDoll(Stringname,intage){this.name=name;this.age=age;}publicStringtoString(){returnthis.name;//只返回了name}}

运行结果

二、程序改错题(20分)

项目结构

改错题01

修改前代码

修改后代码

考察知识点:构造函数,构造函数的定义P92:

1、 构造方法的名称必须与类名一致;

2、 构造方法名称前不能有任何返回值类型的声明;

3、 不能在构造方法中使用return返回一个值,但可以单独写return语句作为方法的结束。

改错题02

修改前代码

修改后代码

考察知识点:静态方法p106:

  1. main方法的静态特性
    • main方法是Java程序的入口方法,必须被声明为static,属于类的静态成员,而非对象的成员。
    • 静态方法在执行时,不需要创建类的实例,直接通过类名(或省略类名)调用。

  2. 静态方法调用规则
    • 静态方法只能直接调用同类的静态方法/静态变量,不能直接调用非静态方法/非静态变量(因为非静态成员属于对象,需要先创建对象才能调用)。
    • 这段代码中add方法被声明为static,因此main方法可以直接调用;若add方法去掉static(变为非静态),代码会编译报错。

  3. 方法的访问修饰符与参数
    • add方法用private修饰,表明该方法仅能在T2类内部被访问,外部类无法调用。
    • 方法参数的a:1、b:2是代码中的标注(非Java语法),实际调用时只需传入1和2即可,正确写法为add(1, 2)。

  4. 静态方法的本质
    • 静态方法属于类级别,存储在方法区,类加载时就会初始化;非静态方法属于对象级别,创建对象时才会分配内存。

改错题03

修改前代码

修改后代码

考察知识点:抽象类的方法p123:
1、包含抽象方法的类必须是抽象类。
2、生命抽象类和抽象方法时都要使用abstract关键字修饰。
3、抽象方法只需要声明而不需要实现。
4、如果一个非抽象类继承了抽象类之后,那么该类必须重写抽象类中的全部抽象方法。

改错题04

修改前代码

修改后代码

考察知识点:throw关键字p155:
1、当throw关键字抛出的异常是编译异常时,有两种处理方式:第一种是在try代码块里使用throw关键字抛出异常,通过try代码块捕获该异常;第二种是在一个有throws声明的方法中使用throw关键字抛出异常,把异常交给该方法的调用者处理。
2、当throw关键字抛出的异常是运行异常时,程序既可以显式使用try…catch语句捕获并处理该异常,也可以完全不理会该异常,而把该异常交给方法的调用者处理。

改错题05

修改前代码

修改后代码

考察知识点:浮点数常量P32:
Java中的浮点数分为单精度浮点数(float) 和双精度浮点数(double) 两种类型。
其中,单精度浮点数后面以 F 或 f 结尾,而双精度浮点数则以 D 或 d 结尾。

改错题06

修改前代码

修改后代码

考察知识点:final关键字P120:
Java中被final修饰的变量为常量,常量只能在声明时被赋值一次,在后面的程序中,常量的值不能被改变。
使用final关键字时需要注意以下几点:
(1) 使用final关键字修饰的类不能有子类
(2) 使用final关键字修饰的方法不能被子类重写
(3) 使用final关键字修饰的变量是常量,常量不可修改

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/5 22:28:43

MusicFree插件完全指南:解锁个性化音乐体验的终极教程

想要让音乐播放器真正变成你的专属音乐管家吗&#xff1f;MusicFree插件系统就是实现个性化音乐体验的关键&#xff01;通过插件扩展功能&#xff0c;你可以轻松获取各大平台的音乐资源、享受精准歌词服务、打造专属音乐库。本指南将带你从零开始&#xff0c;快速掌握插件安装、…

作者头像 李华
网站建设 2026/8/5 23:21:58

显卡驱动终极清理方案:Display Driver Uninstaller完整使用指南

显卡驱动终极清理方案&#xff1a;Display Driver Uninstaller完整使用指南 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uni…

作者头像 李华
网站建设 2026/8/5 4:04:40

5分钟从入门到精通!PandaWiki:零代码小白的AI编程助手

还在为编程查资料抓狂&#xff1f;5 分钟解锁 PandaWiki&#xff0c;AI 帮你搞定 80% 编程难题作为编程新手&#xff0c;是不是总被这些问题困住&#xff1a;想查 API 用法翻遍官网找不到重点&#xff0c;遇到报错搜半天全是零散答案&#xff0c;写技术文档卡壳半天憋不出字&am…

作者头像 李华
网站建设 2026/8/5 0:50:39

基于JAVA的图书馆图书资源检索借阅系统

目录 已开发项目效果实现截图开发技术系统开发工具&#xff1a; 核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&am…

作者头像 李华
网站建设 2026/8/5 3:39:46

原神自动化脚本7大实用技巧:新手也能快速上手的完整指南

原神自动化脚本7大实用技巧&#xff1a;新手也能快速上手的完整指南 【免费下载链接】better-genshin-impact &#x1f368;BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动派遣 | 一键强化 - UI Automation Testing Tools F…

作者头像 李华
网站建设 2026/8/5 16:43:02

基于Java的奖学金评定评优系统的设计与实现

目录已开发项目效果实现截图开发技术系统开发工具&#xff1a;核心代码参考示例1.建立用户稀疏矩阵&#xff0c;用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&…

作者头像 李华