System、out、println(names[2]);}
}
命令行执行:java X a b命令后,其输出结果就是下面哪一个?
A、names??B、b?C、null ?D、运行出现异常
29、哪种方法返回String中得字符数?(?B )。
A、size()?
B、length()
C、width()?
D、girth()
30、下面哪个不就是String类得方法?( C )?
A、subString()B、startsWith()C、toString() D、toUpperCase()
31、关于以下程序段,正确得说法就是(C )
1、 String s1=“a”+“b”;?
2、String s2=new String(s1);?3、if(s1==s2)?4、Syst
em、out、println(“= =is succeeded”);
5、if (s1、equals(s2))
6、 System、out、println(“、equals() is succeeded");
A、行4与行6都将执行
B、行4执行,行6不执行
C、行6执行,行4不执行D、行4行6都不执行
32、下面关于java中类得说法哪个就是不正确得?(C)
A、类体中不仅可以有变量定义与成员方法得定义,还可包含静态代码块.
B、构造方法就是类中得特殊方法。
C、类一定要声明为public得,才可以执行。
D、一个java文件中可以有多个class定义。
33、下面关于变量及其范围得陈述哪个就是不对得?( B )
A。实例变量就是类得成员变量
B.实例变量用关键字static声明
C.在方法中定义得局部变量在该方法被执行时创建
D.局部变量在使用前必须被初始化
34、下列类得定义中,错误得就是(B ).
A、class x {、、、、}
B、publicx extends y{、、、、}(p66)
C、public class x extends y{、、、、}
D、class x extendsy implements y1 { 、、、、}
35、下面就是程序ObjectText、java得代码段:
class Empty{}
public classObjectTest{
public static void main(String[] args){
Emptyem=new Empty();
}
}
以下错误得结论就是(?A)。
A、类Empty就是空得,既没有成员变量也没有成员方法
B、类Empty非空,有一个默认得构造方法
C。类Empty中有一个构造方法Empty()
D。类Empty能够被继承
36、下列应用程序打印多少行?( D )
public classhellotest
{ {System、out、println("hello、");}
publicstaticvoid main(String[]args){
newhellotest();new hellotest();newhellotest();}
}
A、0B、1 C、2?D、3
37、假设A类有如下定义,设a就是A类得一个实例,下列语句调用哪个就是错误得?(C)class A
{?int i;
??static String s;
??void method1() { }
?static voidmethod2(){}
}
A、System、out、println(a、i);
B、a、method1();
C、A、method1();
D、A、method2();
38、瞧下面一段程序:
classAclass
{
void go()
{System、out、println(”Aclass"); }
}
publicclassBclass extends Aclass
{
voidgo()
{System、out、println("Bclass”);}
public static void main(Stringargs[]){
Aclassa=new Aclass();
Aclass a1=new Bclass();
a、go();
a1、go();
}
}
以上程序运行结果就是:(C)
A、Aclass
B、Bclass
C、Aclass
D、Bclass?Aclass BclassBclass Aclass
39、哪一行定义了一个静态变量?(A)
A、public staticint i;??B、static publicint i;
C、public int statici;??D、int public static i;
40、MAX_LENGTH就是int型public成员变量,变量值保持为常量100,其定义就是(C)。
A、final publicintMAX_LENGTH=100;B、publicint MAX_LENGTH=100;
C、publicfinal int MAX_LENGTH=100;D、final int MAX_LENGTH=100;
41、若在某个类中定义了如下得方法:final voidaFinalFunction();,则该方法属于( C )。
A、本地方法
B、静态方法?
C、最终方法
D、抽象方法
42、MyClass类得默认构造方法就是哪一个?( B )
A、new MyClass()?B、MyClass(){}?
C、MyClass{}??
D、public class MyClass
43、构造方法何时被调用( B )
A、类定义时B、创建对象时
C、调用对象方法时
D、使用对象得变量时
44。对于构造方法,下列叙述不正确得就是( B)。?A、构造方法就是类得一种特殊方法,它得方法名必须与类名相同。?B、构造方法得返回类型只能就是void型,且书写格式就是在方法名前加void前缀。
C、构造方法得主要作用就是完成对类得对象得初始化工作。?D、一般在创建新对象时,系统
会自动调用构造方法。
45、给出下面代码段?1、publicclass Test ?2、{ int m,n;
3、publicTest(){} ?4、public Test(int a){m=a;}
5、public staticvoid main(String arg[]) {
6、Testt1,t2;?7、int j,k;
8、j=0; k=0; ?9、t1=new Test(); ?10、t2=newTest(j,k);
11、}?12、}
哪行将引起一个编译时错误?( D )
A、line 3B、line 5 C、line6D、line10
46、在成员方法得访问控制修饰符中,下列哪个修饰符规定访问权限包含该类自身及同包得其她类与其她包得该类子类( B )。
?A.默认 B.protectedC。privateD、public
47、关于被私有访问控制符private修饰得成员变量,以下说法正确得就是( C)?A、可以被三种类所引用:该类自身、与它在同一个包中得其她类、在其她包中得该类得子类
B、可以被两种类访问与引用:该类本身、该类得所有子类
C、只能被该类自身所访问与修改?D、只能被同一个包中得类访问
48、下面哪个修饰符修饰得方法只能被本类中得其她方法使用(C)
A、protected ? B、static??C、private??D、public
49、下面关于继承得哪些叙述就是正确得?(D )
A、在java中允许多继承。
B、在java中一个类只能实现一个接口。
C、在java中一个类不能同时继承一个类与实现一个接口.
D、java得单一继承使代码更可靠。
50、下面关于类得继承性得描述中,错误得就是( C )。
A.继承就是在已有得基础上生成新类得一种方法
B.Java语言要求一个子类只有一个父类
C.父类中成员得访问权限在子类中将被改变
D.子类继承父类得所有成员,但不包括私有得成员方法
51、下面叙述中,错误得就是( C)。
A.子类继承父类B。子类能替代父类
C.父类包含子类
D.父类不能替代子类
52、对于下列代码:?1、class Person{?2、publicvoid printValue(int i, intj){//、、、}
3、publicvoid printValue(int i){//、、、}
4、}?5、public class Teacher extendsPerson {
6、public void printValue(){//、、、}
7、publicvoid printValue(int i){//、、、}
8、public static voidmain(String args[]){
9、Persont=new Teacher();?10、t、printVal
11、}
ue(10);?
12、}
第10行语句将调用哪行语句?( D )
53、
A、line 2
B、line3
C、line 6 D、line 7?类Test1定义如下:
1、public classTest1{
2. public float aMethod(floata,float b){}
3.??
4。}
将以下哪种方法插入行3就是不合法得。( B )
A、public float aMethod(float a,floatb,float c){}
B、public float aMethod(float c,float d){ }
C、public int aMethod(inta,int b){ }
D、privatefloataMethod(int a,intb,intc){ }
54、下列关于抽象类得描述中,错误得就是(C)。
A。抽象类就是用修饰符abstract说明得?B.抽象类就是不可以定义对象得
C。抽象类中不能有具体方法? D.抽象类通常要有它得子类
55、下列哪个类声明就是正确得(D)
A、abstract final class H1{…}
B、abstractprivatemove(){…}
C、protected private number;
D、public abstractclass Car{…}
56、下列关于修饰符混用得说法,错误得就是(D)?A、abstract不能与final并列修饰同一个类?B、abstract类不能有自己得构造方法?C、abstract方法所在得类必须就是abstract类?D、s tatic方法中能处理非static得属性(p51,static修饰方法得特点)
57、在Java中,一个类可同时定义许多同名得方法,这些方法得形式参数个数或参数类型各不相同。这种
重复定义同名方法得行为称为对方法( C).
A、隐藏
B、覆盖
C、重载D、Java不支持此特性
58、在Java 中,能实现多重继承效果得方式就是(C).?A、内部类B、适配器
C、接口
D、同步
59、以下哪个接口得定义就是正确得?( D )
A、interface A
{void print(){ };}
B、abstract interface A
{void print();}
C、abstractinterface A extendsI1, I2//I1、I2为已定义得接口
{ abstractvoid print(){};}
D、interfaceA
{void print();}
60、A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明:
1、 A a0=new A();
2、 A a1=new B();
3、A a2=new C();
问以下哪个说法就是正确得? ( D)
A、只有第1行能通过编译
B、第1、2行能通过编译,但第3行编译出错
C、第1、2、3行能通过编译,但第2、3行运行时出错
D、第1行、第2行与第3行得声明都就是正确得
61、在finally代码块中得代码,( D )
A、在任何错误处理代码之前执行??
B、不执行,除非在前面得try块中产生异常???
C、不能保证在任何确定得时间内执行,但就是将会优先于“碎片收集”被JVM调用?
D、保证执行,无论try块中就是否产生异常
62、当方法遇到异常又不知如何处理时,下列哪种说法就是正确得( B )
A、捕获异常
B、抛出异常
C、声明异常
D、嵌套异常
63、在java得一个异常处理中,哪个语句块可以有多个( A )
A、catch ?
B、finally?
C、try??
D、throws
64、哪个关键字可以抛出异常?( C )
A、transient B、finallyC、throwsD、stati c
65、给出一段程序,试判断哪个就是正确得结果(D)
publicclass myprogram{
?public static void main (Stringargs[]){
try{
?System、out、print(“Helloworld ”);}
finally{
System、out、println(“Finally executing”);
}
}
}
A、无法编译,因为没有指定异常
B、无法编译,因为没有catch子句
C、Helloworld
D、Hello world Finally executing
66、Java中可以用两种方法来创建线程,一种就是继承Thread类,另一种就是实现( B )接口。
A、Throws
B、Runnable
C、ponent
D、Container
67、下面哪个不就是Thread类得方法?(C)
A、yield()B、sleep(long msec)C、go()D、stop()68、Java语言具有许多优点与特点,下列选项中,哪个反映了Java程序并行机制得特点(B)。
A、安全性B、多线程C、跨平台D、可移植
69、以下不属于Swing得控件就是( C )()
A、JPanel?
B、JTextField?
C、Canvas
D、JFrame
70、下列不属于容器得就是(B)
A、Window B、TextBox ?C、Panel D、ScrollPane
Java练习题
四、运行程序写结果
1、当在命令提示符后输入”java SumTest 4 5”之后,下列程序得输出结果为:
4+5=9
publicclassSumTest
{
public static void main(String[] args)
{
int a,b,sum;
a=Integer、parseInt(args[0]);
?b=Integer、parseInt(args[1]);
?sum=a+b;
System、out、println(a+"+” + b + "="+ sum);
}
}
2、当在命令提示符后输入"java PrintStar 8"之后,下列程序得输出结果为:(A12)
********
publicclass PrintStar {
publicstaticvoidmain(String[]args) {
??intn=Integer、parseInt(args[0]);?
?int i;
??for( i=1;i<=n;i++)
?System、out、print("*”);
?System、out、println();
?}
}
3、当在命令提示符后输入"java CalculateTest 5.5”之后,下列程序得输出结果为:
10、0
publicclass CalculateTest{
?public staticvoid main(String args[]){
float x,y;
x=Float、parseFloat(args[0]);
if(x〈1)
?y =x;
?else if(1〈=x&&x<10)
???y= 2*x-1;
?else
???y=3*x-11;
??System、out、println(y);
}
}
4、下列程序得输出结果为:null (A11) public class X{
public static void main(String [] args)
{
String names[]=new String[5];
for(int x=0;x<args、length;x++)
names[x]=args[x];
System、out、println(names[2]);
}
}
5、下列程序得输出结果为: 9、5 10、08(A12)
public classTest{
?publicstaticvoidmain(String[]args){
??System、out、print ( 3、5+1/2+56%10+" ");
System、out、print(3、5+1、0/2+56%10+" ” );
??int a= 4%3*7+1;
??System、out、println( a );
}
}
6、运行结果就是:Hi!Like(B12)
public class Test1{
?String str= new String(”Hi !");
?char[] ch ={ 'L','i’,’k','e' };
?public static voidmain(String args[]) {
?Test1 ex = new Test1();
System、out、print(ex、str +” ”);
??System、out、print(ex、ch);
??}
}
7、运行结果就是: 468 10 1214 16 18 20 (B12)
public classTest3{
?public static void main(String[]args){
inti;
??for (i= 3;i <= 20;i++) {
?if ((i %2) ==0)
??System、out、print(i + "");
?}
?}
}
8、运行结果就是: 0
1 2
3 4
5 6
7 8
9
classTest6 {
publicstatic void main(String[]args){ int i;
for(i=0;i<10;i++){
System、out、print(i+” ");
if (i%2!=0) continue;
System、out、println(” ");
}
}
}
9、运行结果就是: 3 5 7 11 13
17192329
publicclass Test14{
public static void main(String[]args){
int n =1, m,j,i;
??for(i =3;i 〈=30; i +=2) {
??m =(int)Math、sqrt((double)i);
?for(j= 2;j <=m;j++)
??if ((i %j) == 0)
??break;
if(j>=m+1) {?System、out、print(i +” ");
??if(n%5==0)
??System、out、print(”\n”);
?n++;
?}
?}
?}
}
10、下列程序得输出结果为: 7+8=15, 5+8=13
class generalFunction{
public staticint add(intx,int y){return x+y; } //静态方法
}
public classStaticFunTest{
public static void main(String[] args){
intc=generalFunction、add(7,8);
System、out、print(”7 +8 = ” + c+ “,“);
generalFunction fun=new generalFunction();
int d=fun、add(5, 8);
System、out、println("5+ 8 ="+d);
}
}
Aclass
11、下列程序得输出结果为Bclass(A11)(A12)
class Aclass
{
voidgo()
{
System、out、println("Aclass");
}
}
public class Bclass extends Aclass
{
voidgo()
{
System、out、println("Bclass");
}
publicstatic void main(Stringargs[]){
Aclass a=new Aclass();
Aclass a1=newBclass();
a、go();
a1、go();
}
}
12、运行结果就是:What apleasure!(A12)
I am I amLucy
Hello
public class Test13 extendsTT{
?public static void main(String args[]){
?Test13 t=new Test13 ();
?}
?publicTest13(String s){
?super(s);
?System、out、println(”H ello");
}
public Test13(){
?this("I am Lucy");
}
?}
?class TT{
? public TT(){
? System、out、println(”What a pleasure!");?? }
public TT(String s){
?this();
?System、out、println("I am "+s);
}
}
13、运行结果就是:36(B12)
class Test11{
?class Dog{
?privateString name;
??private int age;
??publicintstep;
??Dog(Strings, int a) {
?? name = s;
??age =a;
??step = 0;
??}
??public voidrun(Dogfast){
??fast、step++;
??}
??}
?public static void main(String args[]){ ??Test11 a=new Test11();
?Dog d= a、new Dog("Kate”, 5);
??d、step =35;
??d、run(d);
? System、out、println(” " +d、step);
}
}
14、运行结果就是:exception000
finished
publicclass Test10{
?public staticvoid aMethod()throws Exception{
try{
??thrownew Exception();
}
?catch(Exceptione){
?System、out、println("exception000”);
}
?}
?publicstatic voidmain(String args[]){
??try{
aMethod();
?}
?catch(Exception e){
?System、out、println("exception");
?}
??System、out、println("finished");
}
}
15、运行结果就是:相等(B12)
publicclass Test7{
?public static voidmain(String[]args) {
Strings1=”Java program";
??String s2=newString(”Javaprogram”);
?if(!(s1、equals(s2))){
??System、out、println("不相等");
??}else{
??System、out、println(”相等”);
?}
}
}
16、在输入整数得提示后输入8,在输入符号得提示后输入*,那么下列程序得输出结果为:
********(A12)
import java、util、*;
classCharTest{
?publicstatic void main(String[] args){ ?Scanner reader= new Scanner(System、in);
System、out、println(”请输入一个整数”);??intn=reader、nextInt();
?System、out、println(”请输入一个符号”);
char ch = reader、next()、charAt(0); ??for(int i= 1;i<=n ;i++)
??System、out、print(ch);
System、out、println();
}
}