- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Java笔试题库及答案
一、基础语法题
题目1
下列代码的运行结果是什么?若存在错误,请指出并修改。
publicclassTest{
publicstaticvoidmain(String[]args){
inta=10;
longb=20;
System.out.println(a+b);
intc;
if(a5){
c=15;
}
System.out.println(c);
}
}
答案
第一个System.out.println(a+b);的运行结果是30。因为int类型与long类型运算时,int会自动提升为long类型,结果为long类型的30。
代码存在错误:变量c在使用前可能未初始化。在if语句外,c只在if条件成立时被赋值,若if条件不成立(虽然本题中a=105条件成立,但语法上存在风险),c无初始值,编译会报错。
修改后代码:
publicclassTest{
publicstaticvoidmain(String[]args){
inta=10;
longb=20;
System.out.println(a+b);
intc=0;//给c赋初始值
if(a5){
c=15;
}
System.out.println(c);//运行结果为15
}
}
易错点提示
局部变量必须在使用前明确初始化,成员变量会有默认初始值,局部变量无默认值。
二、面向对象题
题目2
请设计一个Student类,要求包含私有属性name(姓名)、age(年龄),提供无参构造、有参构造(初始化name和age),并提供getter和setter方法,同时定义一个showInfo()方法,用于打印学生的姓名和年龄信息。再编写测试类TestStudent,创建Student对象并调用showInfo()方法。
答案
Student类代码:
publicclassStudent{
//私有属性
privateStringname;
privateintage;
//无参构造
publicStudent(){}
//有参构造
publicStudent(Stringname,intage){
this.name=name;
this.age=age;
}
//getter方法
publicStringgetName(){
returnname;
}
publicintgetAge(){
returnage;
}
//setter方法
publicvoidsetName(Stringname){
this.name=name;
}
publicvoidsetAge(intage){
//简单数据校验:年龄需在0-150之间
if(age=0age=150){
this.age=age;
}else{
System.out.println(年龄输入无效);
}
}
//显示学生信息方法
publicvoidshowInfo(){
System.out.println(姓名:+name+,年龄:+age);
}
}
TestStudent测试类代码:
publicclassTestStudent{
publicstaticvoidmain(String[]args){
//通过有参构造创建对象
Studentstudent1=newStudent(张三,20);
student1.showInfo();//输出:姓名:张三,年龄:20
文档评论(0)