news 2026/6/8 21:20:01

【期末复习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/6/9 10:21:48

2.1信息技术及其发展

1、从作用的范围可将网络类别分为&#xff1a;个人局域网、局域网、城域网、广域网、公用网、专用网。 2、OSI七层网络模型&#xff1a;应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。 3、IEEE802规范包括&#xff1a;802.1(802协议概论&#xff09;、802.2(逻…

作者头像 李华
网站建设 2026/6/9 19:14:29

C++ asio网络编程(2) buffer同步读写

一、buffer是什么任何网络库都有提供buffer的数据结构&#xff0c;所谓buffer就是接收和发送数据时缓存数据的结构。 boost::asio提供了asio::mutable_buffer 和 asio::const_buffer这两个结构&#xff0c;他们是一段连续的空间&#xff0c;首字节存储了后续数据的长度。 asio:…

作者头像 李华
网站建设 2026/6/8 7:40:14

ncmdumpGUI:解锁网易云音乐ncm格式的终极指南

ncmdumpGUI&#xff1a;解锁网易云音乐ncm格式的终极指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾遇到过这样的困扰&#xff1a;从网易云音乐下…

作者头像 李华
网站建设 2026/6/8 19:28:56

WPS文档在线预览终极指南:3步快速集成Vue组件

WPS文档在线预览终极指南&#xff1a;3步快速集成Vue组件 【免费下载链接】wps-view-vue wps在线编辑、预览前端vue项目&#xff0c;基于es6 项目地址: https://gitcode.com/gh_mirrors/wp/wps-view-vue wps-view-vue是一个基于Vue.js和ES6开发的开源前端组件&#xff0…

作者头像 李华
网站建设 2026/6/9 0:28:19

突破网盘下载限制!这款神器让你告别龟速下载

突破网盘下载限制&#xff01;这款神器让你告别龟速下载 【免费下载链接】netdisk-fast-download 各类网盘直链解析, 已支持蓝奏云/奶牛快传/移动云云空间/UC网盘/小飞机盘/亿方云/123云盘等. 预览地址 https://lz.qaiu.top 项目地址: https://gitcode.com/gh_mirrors/ne/net…

作者头像 李华