注意:此页面搜索的是所有试题
国际开放大学Java语言程序设计
父类被访问控制符声明为private的方法,子类也可以继承父类的所有方法。
父类的静态方法不能被子类覆盖为非静态方法。
如果控制台输出下列内容,说明出现异常的代码在HouseDemo.java 代码中的第6行。( )
Exception in thread "main" java.lang.NullPointerException
at org.lang.book.chapter6.HouseDemo.main(HouseDemo.java:18)

线程是比进程更小的独立运行的基本单位。
一个线程执行了sleep(睡眠)方法,就会一直占用之前的CPU资源,该线程就从运行状态进入阻塞状态。
Java程序在编译之后,生成可执行的二进制代码.
某商场为用户设计一套积分系统,用以根据用户不同的级别,基于不同的规则计算积分:
计算规则如下:
1. VIP用户,消费1元,积分:按照消费金额*2 计算积分 向上取整
2. 普通用户 Level>=2级, 积分: 按照消费金额*1.5 计算,向上取整。
3. 普通用户Level<2级,积分: 按照消费金额 * 1计算,向上取整
用户等级的计算规则:
1. Vip用户默认级别为5:
2. 普通用户消费金额 0~20000, level为1
3. 普通用户消费金额 20000~30000, level为2
4. 普通用户消费金额 30000~40000, level为3
5. 普通用户消费金额 40000~50000, level为4
请阅读如下代码,补齐缺少的代码片段。

public 【1】ILevelCalculator {
//计算积分
public Integer calcIntegral(float amount);
}

public abstract class BaseCustomer implements ILevelCalculator {
private String name; //用户姓名
private float amount;//消费金额
private int level;//用户等级
private int integral;//积分

public BaseCustomer(String name, int level) {
this.name = name;
this.level = level;
this.integral = 0;
}

public Integer updateIntegral(Integer newAddedIntegral) {
this.integral += newAddedIntegral;
return this.integral;
}

public void updateAmount(float amount) {
this.amount += amount;

//vip用户直接跳过level设置
if (this.level>4) {
System.out.println("vip customer");
}
else if (this.amount>40000) {
this.level = 4;
}
else if (this.amount>30000) {
this.level = 3;
}
else if (this.amount > 20000) {
this.level = 2;
}
else {
this.level = 1;
}

//计算新增的积分
Integer integral = calcIntegral(amount);
this.updateIntegral(integral);
}
//getter/setter方法省略
}

public class VipCustomer 【2】 BaseCustomer {
public 【3】(String name) {
super(name, 5);
}

@Override
public Integer calcIntegral (float amount) {
return (int)Math.ceil(amount *2);
}
}

public class CommonCustomer extends BaseCustomer {
public CommonCustomer(String name, int level) {
super(name, level);
}

@Override
public Integer calcIntegral(float amount) {
return (this.getLevel()>=2) ? (int)Math.ceil(amount*1.5) : (int)Math.ceil(amount*1);
}
}

测试方法:
public static void main(String[] args) {
BaseCustomer vipCustomer = new VipCustomer("vip customer1");
BaseCustomer commonCustomer = new CommonCustomer("common1", 1);
vipCustomer.updateAmount(10000);
commonCustomer.updateAmount(25000);

System.out.println("VipCustomer积分为:" + vipCustomer.getIntegral());
System.out.println("CommonCustomer积分为:" + commonCustomer.getIntegral());
}

1. 选择合适的Java关键字()
A. class B. interface C. abstract D extends

2. 选择合适的Java关键词: ()
A. Implements
B. abstract
C. extends
D. static

3. 选择合适的方法名:()
A. VipCustomer
B. updateAmount
C. calcIntegral
D. BaseCustomer

4. VipCustomer的积分是多少()
A. 20000 B. 50000 C. 10000 D 37500

5. CommonCustomer的积分是多少()
B. 20000 B. 50000 C. 10000 D 37500

某公司在暑期为销售部的员工提供旅游奖励,规定销售额在50万(包括50万)到150万(包括150万)之间的员工可以报名参加。请阅读如下代码段,并补齐其中缺失的代码。
public class EmployeeSaleChecker {
public static void main(String[] args) {
int sale1 = 80;

EmployeeSaleChecker mdObj = 【1】 EmployeeSaleChecker ();
boolean isValid1 = mdObj.isVaidAge(sale1);
System.out.println("sale1:" + isValid1);
}

public boolean isVaidAge(【2】) {
【3】 isValid = false;

if (【4】&& sale<=150) {
isValid = true;
}
return 【5】;
}
}

【1】 选择合适的Java关键字,创建一个对象( )。
A. instanceof B. init C. create D. new
【2】 选择合适的入口参数( )。
A. sale B. sale1 C. int sale D. int sale1
【3】 选择合适的Java变量的变量类型( )。
A. int B. Integer C. char D. boolean
【4】 选择合适的入口判断条件( )。
A. sale>=50 B. sale1>=50 C. int sale>=50 D. int sale1>=50
【5】 选择合适的变量( )。
A. true B. isValid C. false D. sale1

如下代码段可根据员工输入的销售业绩,判断其奖金发放的级别信息。销售业绩与奖金级别的关系规则如下:
销售业绩>=100万,奖金为一级;
销售业绩在50万(包括)和100万之间,奖金为二级;
销售业绩<50万,奖金为三级。
请阅读如下代码段,并补齐其中缺失的代码。
public class SaleCode {
public 【1】void 【2】(String[] args) {
int sale = 60;

【3】(sale >= 100) {
System.out.println("一级奖金!");
} else if ( 【4】) {
System.out.println("二级奖金!");
} 【5】 {
System.out.println("三级奖金!");
}
}
}


【1】 选择合适的Java类修饰符( )。
A. final B. static C. volatile D. synchronzied
【2】 选择合适的Java 关键字( )。
A. maintest B. main C. test D. mytest
【3】 选择合适的Java 关键字( )。
A. while B. switch C. do D. if
【4】 选择合适的判断语句( )。
A. sale>=100 B. sale>=50 C. sale>50 D score<50
【5】 选择合适的判断语句( )。
A. else if B. do C. case D. else

根据下列示例代码,Student类中定义的getCategory() 方法将同学们的考试成绩分为优秀(大于等于90分)、良好(小于90分并且大于等于80分)、及格(小于80分并且大于等于60分)和不及格(小于60分)四种类别。请阅读如下代码段,并补齐其中缺失的代码。

public class Student {
public String getCategory(int score) {
if (score>= 90){
return "优秀";
}
【1】(score>=80) {
return "良好";
}
else if (score>=60) {
return "及格";
}
【2】 {
return "不及格";
}
}
public 【3】 void main (String[] args) {
Student s = 【4】 Student();
int score = 59;
System.out.println(s.getCategory(score));
}
}

输出:【5】



1.选择合适的Java关键字( )。
A. switch B. else if C. if D. else
2.选择合适的Java关键字( )。
A. switch B. while C. if D. else
3.选择合适的Java修饰符( )。
A. final B. static C. volatile D. synchronized
4.选择合适的Java关键字( )。
A.and B. instanceof C. new D. extends
5.以上代码段的输出结果为( )。
A.优秀 B良好 C. 及格D. 不及格