- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA代码查错1.abstract class Name {?? private String name;?? public abstract boolean isStupidName(String name) {}}大侠们,这有何错误?答案: 错。abstract method必须以分号结尾,且不带花括号。2.public class Something {?? void doSomething () {?????? private String s = ;?????? int l = s.length();?? }}有错吗?答案: 错。局部变量前不能放置任何访问修饰符 (private,public,和protected)。final可以用来修饰局部变量(final如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和method而非variable)。3.abstract class Something {?? private abstract String doSomething ();}这好像没什么错吧?答案: 错。abstract的methods不能以private修饰。abstract的methods就是让子类implement(实现)具体细节的,怎么可以用private把abstractmethod封锁起来呢? (同理,abstract method前不能加final)。4.public class Something {?? public int addOne(final int x) {?????? return ++x;?? }}这个比较明显。答案: 错。int x被修饰成final,意味着x不能在addOne method中被修改。5.public class Something {?? public static void main(String[] args) {?????? Other o = new Other();?????? new Something().addOne(o);?? }?? public void addOne(final Other o) {?????? o.i++;?? }}class Other {?? public int i;}和上面的很相似,都是关于final的问题,这有错吗?答案: 正确。在addOne method中,参数o被修饰成final。如果在addOne method里我们修改了o的reference(比如: o = new Other();),那么如同上例这题也是错的。但这里修改的是o的member vairable(成员变量),而o的reference并没有改变。6.class Something {??? int i;??? public void doSomething() {??????? System.out.println(i = + i);??? }} 有什么错呢? 看不出来啊。答案: 正确。输出的是i = 0。int i属於instant variable (实例变量,或叫成员变量)。instant variable有default value。int的default value是0。7.class Something {??? final int i;??? public void doSomething() {??????? System.out.println(i = + i);??? }}和上面一题只有一个地方不同,就是多了一个final。这难道就错了吗?答案: 错。final int i是个final的instant variable (实例变量,或叫成员变量)。final的instant variable没有default value,必须在constructor (构造器)结束之前被赋予一个明确的值。可以修改为final int i = 0;。8.public class Something {???? public static void main(String[] args) {??????? Something s = new Something();??????? System.out.println(s.doSomething() returns + doSomething());??? }??? public String doSomething() {??????? return Do something ...
您可能关注的文档
最近下载
- 新22S6消防工程参考标准.docx
- 慢性肾脏病早期筛查、诊断及防治指南(2022年版).pptx VIP
- 家庭饮食健康计划.pptx VIP
- 2025年福建省厦门集美中学招聘办公室职员1人笔试备考题库及答案解析.docx VIP
- 级配碎石施工 ..ppt VIP
- 2022年7月上海高考英语真题(学生版+解析版+听力音频).docx
- DB44T 1212-2013 用能单位能源计量管理体系通用要求.pdf VIP
- 上-下气道慢性炎症性疾病联合诊疗与管理专家共识中华医学会呼吸病学分会哮喘学组(发布时间:2017-07).pdf VIP
- 心力衰竭诊疗规范.docx VIP
- 光照时间对三斑海马幼苗成活率和生长速度的影响.pdf VIP
文档评论(0)