news 2026/4/18 8:43:51

改错分析题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
改错分析题

文章目录

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

一、程序分析题

项目结构

分析题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;/** * 写出这段代码在干什么: * 1. 定义一个整数A,初始值为54321,sum初始值为0,t初始值为10。 * 2. 使用while循环,当t大于0时,执行循环体。 * 3. 在循环体中,将A除以10的余数加到sum上,并将t加到sum上。 * 4. 将A除以10,将t除以10。 * 5. 循环结束后,打印出累加结果sum。 */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;/** * 演示如何使用try-catch-finally结构来处理异常。 * 1. 尝试执行可能抛出异常的代码。 * 2. 捕获并处理特定的异常类型。 * 3. 捕获并处理其他所有类型的异常。 * 4. 无论是否发生异常,都会执行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;/** * 写出这段代码在干什么: * 1. 定义一个名为T4的公共类。 * 2. 在main方法中,创建一个名为doll的Doll对象,初始化名为"Kitty",年龄为2。 * 3. 打印出doll对象。 */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;}}

运行结果:

二、程序改错题

项目结构

改错题01

packageProgramErrorCorrecttion;publicclassT1{privateintage;privatestaticStringname;privateT1(){//构造方法}voidT1(intage){//构造方法this.age=age;}publicT1(StringuserName){// 构造方法name=userName;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:构造方法不能有返回值 p92 * */publicclassT1{privateintage;privatestaticStringname;privateT1(){//构造方法}// void T1(int age) { //构造方法// this.age= age;// }publicT1(intage){//构造方法不应有返回值this.age=age;}publicT1(StringuserName){//构造方法name=userName;}}

相关知识点:
1.构造方法名应与类名一致
2.构造方法不应有任何返回值类型声明
3.方法体内不允许返回任何值,但可以使用return作为结束跳转

改错题02

packageProgramErrorCorrecttion;publicclassT2{publicstaticvoidmain(String[]args){System.out.println(add(1,2));}privateintadd(inta,intb){returna+b;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:静态方法不能直接使用非静态方法 p102 * */publicclassT2{publicstaticvoidmain(String[]args){System.out.println(add(1,2));}// private int add(int a, int b) {// return a + b;// }privatestaticintadd(inta,intb){//静态方法只能调用静态方法returna+b;}}

相关知识点:
1.只有静态方法才能用类名.方法名调用
2.当一个类中有静态方法、变量时,改类的所有实例共享这个静态方法、变量

改错题03

packageProgramErrorCorrecttion;publicclassT3{abstractfloatcalculateArea(floatw,floath);voidprintInfo(){}staticfloatgetWidth(){return0;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:包含抽象方法的类必须声明为抽象类 p123 * */publicabstractclassT3{// 包含抽象方法的类必须为抽象类abstractfloatcalculateArea(floatw,floath);voidprintInfo(){}staticfloatgetWidth(){return0;}}

相关知识点:
1.包含抽象方法的类一定是抽象类
2.抽象类不一定包含抽象方法
3.子类必须重写父类的所有的抽象方法

改错题04

packageProgramErrorCorrecttion;publicclassT4{publicstaticvoidmain(String[]args){intresult=divide(4,0);System.out.println(result);}publicstaticintdivide(intx,inty)throwsException{intresult=x/y;returnresult;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:当调用的方法可能产生异常时,需显示声明抛出或处理异常 p148 * */publicclassT4{publicstaticvoidmain(String[]args)throwsException{intresult=divide(4,0);//对于可能抛出异常的函数,必须处理异常或者声明异常System.out.println(result);}publicstaticintdivide(intx,inty)throwsException{intresult=x/y;returnresult;}}

相关知识点:
1.包含抽象方法的类一定是抽象类
2.抽象类不一定包含抽象方法
3.子类必须重写父类的所有的抽象方法

改错题05

packageProgramErrorCorrecttion;publicclassT5{publicstaticvoidmain(Stringargs[]){bytea=-128;intb=666;floatc=3.14;doubled=0.618;chara=97;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:float与double不能自动转换,需显示声明数据类型,在数据末尾加F或D * 同一作用域内,变量名不能重复 p34 * */publicclassT5{publicstaticvoidmain(Stringargs[]){bytea=-128;intb=666;floatc=3.14f;//默认浮点数类型为double 所以需要显示声明为floatdoubled=0.618;chara2=97;//变量名重名}}

相关知识点:
相关知识点:
1.在同一命名空间中变量名不能重名
2.float与double数据类型不能自动转换,需要显示声明,在数据末尾加F或D

改错题06

packageProgramErrorCorrecttion;publicclassT6{publicstaticfinalStringSCHOOL_NAME="成都文理学院";publicstaticvoidmain(Stringargs[]){changeSchool("电子科技大学");System.out.println(SCHOOL_NAME);}staticvoidchangeSchool(Stringschool){T6.SCHOOL_NAME=school;}}

修改后

packageProgramErrorCorrecttion;/** * 本题考察知识点:被final修饰的变量不能被修改 p120 * */publicclassT6{publicstaticStringSCHOOL_NAME="成都文理学院";publicstaticvoidmain(Stringargs[]){changeSchool("电子科技大学");System.out.println(SCHOOL_NAME);}staticvoidchangeSchool(Stringschool){T6.SCHOOL_NAME=school;//final 修饰的变量不允许改变,只能初始化一次}}

相关知识点:
1.被final修饰的变量不允许修改
2.被final修饰的方法不允许被重写
3.被final修饰的类不允许被继承

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

如何用Docker一键部署Open-AutoGLM?资深架构师亲授部署秘技

第一章&#xff1a;Open-AutoGLM容器化部署概述Open-AutoGLM 是一个面向自动化生成语言模型任务的开源框架&#xff0c;支持智能推理、任务调度与多模型协同。为提升其部署灵活性与环境一致性&#xff0c;容器化成为首选方案。借助 Docker 与 Kubernetes 技术&#xff0c;Open-…

作者头像 李华
网站建设 2026/4/16 0:25:43

为什么90%的人都卡在Open-AutoGLM下载环节?真相在这里

第一章&#xff1a;为什么90%的人都卡在Open-AutoGLM下载环节&#xff1f;真相在这里 许多开发者在尝试部署 Open-AutoGLM 时&#xff0c;往往在最基础的下载阶段就遇到阻碍。问题的核心并不在于工具本身&#xff0c;而在于环境依赖与资源获取路径的不透明。 常见的下载失败原…

作者头像 李华
网站建设 2026/4/18 8:07:42

【大模型实战必备技能】:Open-AutoGLM一键下载与本地部署全流程解析

第一章&#xff1a;Open-AutoGLM项目背景与核心价值Open-AutoGLM 是一个面向生成式语言模型自动化推理优化的开源框架&#xff0c;旨在解决大模型在实际部署中面临的推理延迟高、资源消耗大、适配复杂等核心问题。该项目结合了动态图重写、算子融合与硬件感知调度等技术&#x…

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

为什么你的Open-AutoGLM总失败?离线依赖缺失是元凶!

第一章&#xff1a;Open-AutoGLM离线部署的挑战与认知在将Open-AutoGLM模型部署至离线环境的过程中&#xff0c;开发者面临诸多技术瓶颈与系统性挑战。不同于云端部署可依赖弹性计算资源与持续网络服务&#xff0c;离线部署要求模型在资源受限、无外部更新支持的环境中稳定运行…

作者头像 李华
网站建设 2026/4/18 8:35:51

vLLM推理加速全解析,如何让Open-AutoGLM性能提升300%?

第一章&#xff1a;vLLM推理加速全解析&#xff0c;Open-AutoGLM性能跃迁新高度在大模型推理场景中&#xff0c;延迟与吞吐量是衡量系统效能的核心指标。vLLM 作为新一代高效推理框架&#xff0c;通过引入 PagedAttention 技术重构了传统注意力机制的内存管理方式&#xff0c;显…

作者头像 李华
网站建设 2026/4/18 8:02:07

Hugging Face下载Open-AutoGLM总失败?你必须知道的5个关键技巧

第一章&#xff1a;Hugging Face下载Open-AutoGLM总失败&#xff1f;你必须知道的5个关键技巧在尝试从 Hugging Face 下载 Open-AutoGLM 模型时&#xff0c;网络限制、认证问题或配置不当常导致下载中断或失败。掌握以下关键技巧可显著提升成功率。使用镜像源加速下载 国内访问…

作者头像 李华