scjp复习笔记(2)

本文深入探讨了Java编程中的关键概念和技术细节,包括字符串操作、格式化输出、异常处理、面向对象设计原则及常见面试题解析。通过具体实例和代码示例,帮助读者理解和掌握Java编程的核心知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Example11:

注意length和length()的用法:比如Stringstr="Mynameiswuyangping"求长度为str.length();但String[]str=newString[5],求这个的长度为str.length.

Example12:

java1.5版本里面也支持像C语言里面的输出输入格式。比如System.out.printf("PIisapproximately%fandEisapproximately%b",Math.PI,Math.E);

输出的结果为:PIisapproximately3.141593andEisapproximatelytrue

Example12:

publicclassBeat{

Integeri; //line2

intx;

publicBeat(inty){

x=i+y;//line5

System.out.println(x);

}

publicstaticvoidmain(String[]args){

newBeat(newInteger(4));//line9

}

}

Line2中的i编译的时候出现nullPointException异常,改为Integeri==newInteger(1)就行。

Example13:

这里进入了物件导向设计。考题从第9章开始就迅速加深难度,之后各章节考题的量也开始增多了。遇到继承或多型的考题,在解题时务必:

Step01:依程式大致画出类别图。

Step02:检查父类别有无提供无参数建构子,若没有无参数建构子,子类别应

在建构子中的第1行呼叫super(⋯)或this(...)。若没有呼叫super(⋯)或

this(...),应该就会编译失败了!

Step03:检查覆盖方法有无符合规则(参考《第9-4节:覆盖方法》)。

Step04:检查是否运用了多型(用上层型别宣告的变数或参数,来参考下层类别

建立的物件)。若是运用多型,注意呼叫到的方法有无被子类别覆盖。

Step05:若程式中有转型,检查会不会出现执行时期错误。

这样解题或检视程式,应该就能取得结果。

Example14:
JavaBean的命名规则是setXXX()getXXX();isXXX();

Example15:

classFoo{

publicinta=3;

publicvoidaddFive(){a+=5;System.out.print("f");}

}

classBarextendsFoo{

publicinta=8;

publicvoidaddFive(){this.a+=5;System.out.print("b");}

}

publicclassPerson{

publicstaticvoidmain(Stringd[]){

Foof=newBar();

f.addFive();

System.out.println(f.a);

}

}

Theoutputisb3。f.A调用的是父类的方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值