1、 java 是从( )语言改进重新设计(单选)
A、Ada
B、C++
C、Pasaca
D、BASIC
2、下列语句哪一个正确()(单选)
A. Java程序经编译后会产生machine code
B. Java程序经编译后会产生byte code
C. Java程序经编译后会产生DLL
D. 以上都不正确
3、下列说法正确的有( )(单选)
A. class中的 constructor 不可省略
B. 构造方法必须与class同名,但方法不能与class同名
constructor在一个对象被new时执行
一个class只能定义一个constructor
4、提供Java存取数据库能力的包是( )(单选)
A.java.sql
B.java.awt
C.java. lang
D.java. swing
5、下列运算符合法的是( )(单选)
A.&&
B.<>
C.if
D.:=
6、下列哪一种叙述是正确的( )(单选)
A. abstract修饰符可修饰字段、方法和类
B. 抽象方法的body部分必须用一对大括号{ }包住
C. 声明抽象方法,大括号可有可无
D. 声明抽象方法不可写出大括号
7、下列语句正确的是( )(单选)
A. 形式参数 可被视为local variable
B. 形式参数可被字段修饰符修饰
C. 形式参数为方法被调用时,真正被传递的参数
D. 形式参数不可以是对象
8、下列哪种说法是正确的( )(单选)
A. 实例方法可直接调用超类的实例方法
B. 实例方法可直接调用超类的类方法
C. 实例方法可直接调用其他类的实例方法
D. 实例方法可直接调用本类的类方法
上期练习题答案公布
1.一球从100米高度自由落下,每次落地后反跳回原高度的一半;
再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
(考察知识点: 循环语句 )
public class Num1 {
public void ball(){
double num=100;
double height=100;
for ( int i = 0; i < 10; i++) {
height=height/2;
num+=height*2;
}
System.out.println(“小球10次共经过:”+num+”米”);
System.out.println(“第10次的高度为:”+height+”米”);
}
public static void main(String[] args) {
Num1 num1= new Num1();
num1.ball();
}
}
2.编写一个截取 字符串 的函数,任意输入一个字符串和字节数,返回该字符串的指定字节数,
但是要保证汉字不被截取半个,
例如:输入”哈123″ 4 返回”哈12″
输入”哈123哈456″ 6 返回”哈123哈” 而不是”哈123″+半个哈(乱码格式)
考察知识点:String类的使用 带参数有返回值的方法 字符与字节的关系 汉字的 字节处理 循环语句 判断语句
结果:
package com.homework;
import java.util.Scanner;
public class Num3 {
public void stringTest(String src, int length ) {
char st1[] = src.toCharArray();
int st[] = new int [st1.length];
if (src.length() < length) {
length = src.length();
}
StringBuilder builder = new StringBuilder();
int max = 0;
for ( int i = 0; i < st1.length; i++) {
if (st1[i] > 255) {
st[i] = 2;
} else {
st[i] = 1;
}
builder. append (st1[i]);
max += st[i];
if (max >= length) {
break ;
}
}
System.out.print(builder);
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println(“请输入一个字符串”);
String a = scanner.nextLine();
System.out.println(“请输入一个你要截取的字符串字节数”);
int b = scanner.nextInt();
Num3 num3 = new Num3();
num3.stringTest(a, b);
}
}