资源描述
1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。(编译后产生的字节码是.class)
A. .java B. .class
C. .html D. .exe
2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( B )。
A. 3 B. 3. 5
C. 4 D. 5
这道题不够严谨 它没有指定 x,y,z 的类型
如果它们都是double型那么
等式等价于 y = y+ (z--)/(++x)
y = 2 + 3 / 2; (注意 z 是在用后再自减的此时 z = 2;)
y = 3.5;
如果它们都是int 型的话那么
等式等价于y = y+ (z--)/(++x)
y = 2 + 3 / 2; (注意 z 是在用后再自减的此时 z = 2;)
y = 2 + 1; (注意:因为z和x都是int所以运算的结果也是int等于1
y = 3;
如果是单选题的就选B,如果是多选题的话就选A、B;
3、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )?
A、public static void main( )
B、public static void main( String args[] )
这样写也是可以的public static void main(String[] args)
C、public static int main(String [] arg )
D、public void main(String arg[] )
4、在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( C )语句。
A、import java.awt.* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
5、在Java Applet程序用户自定义的Applet子类中,常常重载( D )方法在Applet的界面中显示文字、图形和其它界面元素。
注意:要知道Applet的生命周期即什么时候调用start() 、stop()、init()
A. start( ) B. stop( )
C. init( ) D. paint( )
6、下面哪些是java语言中的关键字? ( )
A sizeof (是C++的)
B abstract
C NULL
D Native
7、下面语句哪个是正确的? ( )
A char='abc';(字符串要用双引号)
B long l=oxfff; (是十六进制的 4095.0)
C float f=0.23; ( float f = 0.23f;或者 float f = 0.23F是一样的)
D double=0.7E-3; (如果有变更名就正确double d = 0.7E-3)
8、以下程序测试String 类的各种构造方法,试选出其运行效果。 ( A )
class STR{
public static void main(String args[]){
String s1=new String();
String s2=new String("String 2");
char chars[]={'a',' ','s','t','r','i','n','g'};
String s3=new String(chars);
String s4=new String(chars,2,6);(注:取数组下标为2的开始6个元素)
byte bytes[]={0,1,2,3,4,5,6,7,8,9}; //注:这个没有用到
StringBuffer sb=new StringBuffer(s3);
String s5=new String(sb);
System.out.println("The String No.1 is "+s1);
System.out.println("The String No.2 is "+s2);
System.out.println("The String No.3 is "+s3);
System.out.println("The String No.4 is "+s4);
System.out.println("The String No.5 is "+s5);
}
}
A The String No.1 is
The String No.2 is String 2
The String No.3 is a string
The String No.4 is string
The String No.5 is a string
B The String No.1 is
The String No.2 is String 2
The String No.3 is a string
The String No.4 is tring
The String No.5 is a string
C The String No.1 is
The String No.2 is String 2
The String No.3 is a string
The String No.4 is strin
The String No.5 is a string
D 以上都不对
9、下面语句段的输出结果是什么? ( B )
int i = 9;
switch (i) {
default:
System.out.println("default");
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
case 2:
System.out.println("two"); }
A default
B default, zero
C error default clause not defined
D no output displayed
注: 如果default在最前面且switch里面没有i的匹配值,那么
程序会运行第一个break前面的所有代码(这道题便是)
如果default在最后面且switch里面没有i的匹配值,那么
程序只会运行default语句后面的代码
只要switch里面有匹配值不管default在那里只运行那个
相应的case的代码
10、一个可以独立运行的Java应用程序( D)
A、可以有一个或多个main方法
B、最多只能有两个main方法
C、可以有一个或零个main方法
D、只能有一个main方法
11、设数组Array由以下语句定义
int Array=new int[10]
则数组的第一个元素的正确引用方法为( )
A、Array[1] B、Array[0] C、Array[] D、Array
12、Java用来定义一个类时,所使用的关键字为 ( )
A、class B、public C、struct D、class 或 struct
13、Java程序的执行过程中用到一套JDK工具,其中javac.exe是指( )
A.Java文档生成器 B.Java解释器 (是java.exe)
C.Java编译器 D.Java类分解器
14、一个可以独立运行的Java应用程序( )
A、可以有一个或多个main方法
B、最多只能有两个main方法
C、可以有一个或零个main方法
D、只能有一个main方法
15、设数组Array由以下语句定义
int Array=new int[10]
则数组的第一个元素的正确引用方法为( )
A、Array[1] B、Array[0] C、Array[] D、Array
16、break语句( )
A、只中断最内层的循环 B、只中断最外层的循环
C、借助于标号,可以实现任何外层循环中断 D、只中断某一层的循环
17、Jcreator是( )
A、一种全新的程序语言
B、一种程序辅助设计工具
C、一种由Java写成的,并支持Java Applet的浏览器
D、一种游戏软件
18、以下声明的变量中,只有( )是不合法的。
A、 internet_network B、 *number
C、 Hello D、 _sys_path
19、以下程序段执行后的K值为( )。
int x=20; y=30;
k=(x>y)?y:x
A、 20 B、 30 C、10 D、50
.注 :三元运算符
x>y 为假 所以 k = x
(如果 x>y 为真,那么k = y)
20、要想定义一个不能被实例化的抽象类,在类定义中必须加上修饰符( )。
A、 final B、 public C、 private D、abstract
21、以下代码中,this是指( )。
class bird{
int x,y;
void fly(int x,int y){
this.x=x;
this.y=y;
}
}
A、 bird B、 fly C、bird或fly D、不一定
(这里选D。this指的是实例化这个类的对像
如果this是bird类的话,那么 x和y必须是静态变量static )
22、作为Java应用程序图形界面基础的是( )。
A、Panel B、Frame C、Windows D、Applet
23、Java源文件和编译后的文件扩展名分别为( )
A、.class和 .java B、.java和 .class
C、.class和 .class D、.java和 .java
24. 编译并运行以下程序,以下描述哪个选项是正确的( )
1. class X{ 2. public String toString(){ 3. return super.toString();} 4. }
A、编译通过运行无异常 B、编译通过但运行时出错 、
C、行2出错,不能成功编译 D、不能成功编译,行3出错
注:class X {
Public String toString() {
Return super.toString();
}}
Java每一个类都有一个toString()的方法现在这里是重写它,能够编译
但是运行不了(因为没有主函数)
25. 下列关于修饰符混用的说法,错误的是( )
A. abstract不能与final并列修饰同一个类
B. abstract类中不可以有private的成员
C. abstract方法必须在abstract类中
D. static方法中能处理非static的属性(只能处理static 的属性)
26. 以下标识符中哪项是合法的是(选两个 )
A、 BigMeaningless Name B、$int C、 1 st D、_1
27、 Applet小程序 和 Application独立程序的主要区别是( )。
A、小程序内必须有 main() 方法
B、独立程序必须包含 main() 方法,而Applet小程序的父类一定是Applet
C、两者都必须有 main() 方法
D、小程序必须包含 main() 方法,而独立程序的父类一定是Applet
28、在JAVA语言网络编程中,URL类是在包中,该类中提供了许多方法用来访
问URL对象的各种资源,下列哪个用来获取URL中的端口号。( )。
A、getFile() B、getProtocol() C、getHost() D、getPort()
29、JAVA语言中的套接字(Socket)是一种基于网络进程通信的接口,是网络通信协议的
一种应用。它有两个主要类,下列哪个在Application应用程序中实现客户端的通信
功能。( )
A、ServerSocket类 B、URL类
C、Socket类 D、Client
30、在Java中,对组件可实现不同的布局,下列哪个不对( )。
A、顺序布局(FlowLayout)(是Panel的默认布局) B、边界布局(BorderLayout)(是Frame,Dialog的默认布局)
C、网络布局(GridLayout) D、中央布局(CenterLayout)
31、下面的程序输出的结果是( )。
public class CC implements BB
{
public static void main(String[] args)
{
int i=6;
CC c1=new CC();
i=c1.k;
System.out.println(“i=”+i);
}
}
interface BB
{
int k=10;
}
A、i=0 B、i=6 C、i=10 D、i=true
装订线 装订线 装订线
32、以下关于Java语言继承的说法正确的是( )。 A)Java中的类可以有多个直接父类(可以多个间接) B)抽象类不能有子类 (不能直接实例化)
C)Java中的接口支持多继承 D)最终类可以作为其它类的父类
33、下列方法中可以用来创建一个新线程的是( )
A) 实现java.lang.Runnable接口并重写start()方法
B) 实现java.lang.Runnable接口并重写run()方法
C) 继承java.lang.Thread类并重写run()方法
D) 实现java.lang.Thread类并实现start()方法
34、要使用Java语言开发socket程序,需要使用( )包。
A) B)java.io C)java.awt D) java.util
35、当浏览器重新返回Applet所在页面时,将调用Applet类的方法是( )
A) start() B) init() C) stop() D) destroy()
36、int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语
句是( )
A)public int MAX_LENGTH=100
B)final int MAX_LENGTH=100
C)public const int MAX_LENGTH=100
D)public final int MAX_LENGTH=100
37、已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式 。C类也位于packageA包,且继承了B类 。则以下说话正确的是()
A.A类的实例不能访问到B类的实例
B.A类的实例能够访问到B类一个实例的x成员
C.C类的实例可以访问到B类一个实例的x成员(看下面那张表可知)
D.C类的实例不能访问到B类的实例
package packageA;
class A {
}
class C extends B {
}
package packageB
public class B {
protected x;
}
38、以下()类不属于字符流类。
A.Reader
B. FileReader
C.BufferedInputStream
D.StringReader
注:有Reader都是字符流
装订线 装订线 装订线
39、以下()类属于字节流类 。
A.FileWriter
B.PushbackReader
C.FilterReader
D.FileInputStream
注:如果是二进制的就有data
40、编译并运行下面的Java代码段:
char c='a';
switch (c) {
case 'a': System.out.println("a"); (注:这里没有break所以它还是会运行下面的代码)
default: System.out.println("default");
}
输出结果是()
A.代码无法编译,因为switch语句没有一个合法的表达式
B.a
Default
C.a
D.default
一 java 基础
1.将java源程序编译为目标代码采用的命令为 javac .
2.解析执行一个java 应用程序采用的命令为 java .
3.在命令行编译运行java 程序,需要设置的环境变量是 classpath和 path。
4.以下说法是否正确:
Java语言的语法和 C++类似,java 和C++都广泛使用了指针数据类型 (X)
5. java 中,下面不能作为标示符的是 (BE)
A. MyName B. int C.Int C D. _intC E. 3intA
6. java 关键字有 const, sizeof, super, void, double?(X)
7. java 的原始数据类型? (ABCD)
A. short B.boolean C.byte D.float
8.创建4个float类型元素的数组。
float a[] = new float[4]
9. 运行程序
public class Test{
Static int a[] = new int [10];
public static void main (String args[])
{
System.out.println (a[1]);
}
}
输出结果 : 0 //因为没有初始化,系统默认为0
二 表达式和程序结构
1. 逻辑运算符优先级由高到低:
非not,与and,或or
2. 如果 int a = 90;int b = 104; 表达式a=b的逻辑值为true 。表达式!(a>=b)的值true 。表达式(a==90)&&(b>105)的值 false。表达式(a==90)||(b>105)的值true 。
3.运行程序
int i = 2, j = 10;
do
{ if ( i++ < --j ) continue;
}
while ( i < 5 );
i= 5 j= 7
4. 运行程序
int i = 0, j = 3;
while (1){
i+=2;
if (i>=10) break;
j++;
}
i=10 j = 7
5. 运行程序
int x = -2 ;
if (x>0) {System.out.println ( “first” ) ; }
else if ( x> -3) {System.out.println ( “second” ) ; }
else {System.out.println ( “third” ) ; }
系统输出:second 。
6. int i = 2 ;
string [ ] myString = new String [5];
string s1 = myString [i];
s1的值为 null 。
7.正确的包含50个字符串数组的声明:
String obj [] = new String [50]
8. java 主函数的正确写法:
public static void main( String [ ] args )
9. for , while, do while在条件求值前循环体至少要执行一次,应使用 do while
10. 程序差错 7
1)public void modify () {
2) int i, j, k;
3) i= 100;
4) while (i=0){
5) j = i*2 ;
6) System.out.println(“the value of j is ” + j ) ;
7) k = k+1; //k没有初始化
8) i- - ;
9) }
10) }
三 类和对象
1.判断以下描述是否正确。
A 对象的典型周期、生命周期是创建、运行、存储和释放四个阶段。(X)(注:创建、运行、释放)
B java 中的类定义了同类对象共有的变量和方法。 (Y)
C 一个类可以生成多个对象,并且这些对象都具有相同属性。(Y)
D 对象间的通信是通过消息传递来实现的。(Y)
E 只要把所有的方法和变量写到同一文件中,便可以实现这些方法和变量的封装。(X)
F 通过继承,子类可以获得父类的所有特性。(X)
G 在一个类中,可以定义多个同名的方法,只要确定它们的参数个数和类型不同,这种现象称为类的多态。 (Y)
H 类的多态体现在方法的重载上,包括成员方法、成员变量和构造方法的重载。 (X)
2. 下面哪个方法是构造方法MyClass的重载?(B)
public class MyClass { public MyClass (int x, int y, int z){} }
A. protected int MyClass (){}
B. public MyClass (){}
C. private int MyClass{int z, int y, byte x} {}
D. public void MyClass (byte x, byte y, byte z) {}
3、判断一下关于类的描述是否正确
A、在java中一个类卡可以有多个直接父类F
B、在java中一个类只能实现一个接口,F
C、在java中一个类不能同时集成一个类和实现一个接口,F
D、在java中只允许单一继承,T
E、子类不能继承父类中的private成员,除此之外,其它所有的成员都可以通过继承变成子类的成员,T
F、java程序中一个子类可以继承多个父类,F
G、抽象类不能用来实例化一个对象,T
H、用final修饰类,说明该类是最终类,不能被继承,T
I、私有成员变量不能被本类中的成员方法所访问,F
J、实例变量用关键字static声明,F
k、在方法中定义的局部变量在该方法被执行是创建,T
L、局部变量在使用前必须被初始化,T
--------------------------------------------------------------------------------------
1、类成员变量需要只能够被 相同的包中的其他类访问,应该用什么访问修饰符:默认(友好)
2、类中成员变量只能 被声明他的类 和 同一个包中的类访问,应该是用哪个修饰符:默认(友好)
--------------------------------------------------------------------------------------
判断以下关于接口的描述是否正确
1,在java中一个类可以同时继承一个类和实现多个接口,T
2,在接口中所有方法都是抽象的,T
3,在接口中定义的变量可以被实现接口方法的类改变,F
4,要实现接口,要在类的声明语句中使用关键字implements,同时在类中实现接口中定义的方法,T
-----------------------------------------------
说明以下程序为什么编译时会出错
public class MyClass
{
public static void main(String arguments[])
{
mymethod(String(arguments));
}
public void mymethod(String[] arguments)
{
System.out.println(arguments);
System.out.println(arguments[1]);
}
}
ANS: mymethod 为实例方法,而该程序没有实例化对象。
判断以下关于包的描述是否正确
1,在java中,当声明的类很多时,类名就可能冲突,这就需要一种机制管理类名,这就是包,T
2,同一包中类名不能重复,不同包中可以有相同的类名,T
3,java.lang包是java语言的基础类库,包含基本数据类型,数学函数,字符串类等,这是唯一自动引入到每个java程序的类库,T
4,import.java.awt.*;用来引入awt包中全部类以及所有下层包中的全部类F
---------------------------------------------------------------------------------------------
下列语句的次序是否正确(3)
1, import java.awt.*;
package Mypackage;
class myclass{}
2, class myclass{}
package mypackage;
3, package mypackage;
import java.awt.*;
class myclass{}
4, class myclass{}
import java.awt.*;
------------------------------------------------------------------------------------------
以下哪个方法可以加入类MyChild中(4)
public class MyParent
{
public int addValue(int a,int b)
{
int s;
s=a+b;
return s;
}
}
class MyChild extends Parent{}
1,int addValue(int a,int b)
2,public void addVaule (int a,int b)
3,public int addValue(int a)
4,public int addValue(int a ,int b)throws MyException
----------------------------------------------------
java是面向对象的程序语言,java所有的类的根类是:java.lang.Object
----------------------------------------------------------------------
下列哪个类声明是正确的?4
1,abstract final class Car{}
2,abstract private car(){}
3,portected private car;
4,public abstract class Car{}
--------------------------------------------------------------------------
——————————————AWT&Swing————————————
1,JFrame默认的布局管理器是什么:BorderLayout
2,Swing组件有:JApplet,JFrame,JPanel,JButton, JComboBox, JList
3,Java中哪个控件允许用户从一组选项中选择单个选项:RadioButton
WindowListener接口的方法有:WindowActivated windowClossed,
windowClosing windowDeactivated windowIconified windowDeiconified windowOpened
5,下面不属于Java的布局管理器的是:a
a,RectLayout
b,FlowLayout
c,CardLayout
d,GridLayout
6,下列关于Java中的事件处理机制叙述是否正确
a,每一个事件发生,Java虚拟机就会把事件的消息传递给程序,由程序中的事件处理方法对事件进行处理,T
b,能产生事件的组件叫做事件源,当事件发生事件时,事件监听器就代替事件源对发生的事件进行处理,这就是所谓的委托事件处理机构,T
c,一个时间监听器如果要处理多种事件,就必须要实现多个事件接口,T
d,事件监听器必须是包含事件源的容器对象,F
---------------------------------------------------------------------------------------------------------------------------
1,applet的缺省的布局管理器是FlowLayout管理器:T
2,FlowLayout管理器使用控件对准每一行的中心,T
--------------------------------------------------------------------------------------------
在窗体上,单击一个按钮,会产生什么事件:b
a,ClickEvent
b,ActionEvent
c.MouseEvent
d,ButtonEvent
-----------------------
下面哪个类不是容器类:a
a,Canvas
b,JPanel
c,JFrame
d,JApplet
----------------------------------
单选60%
阅读与选择题15%
填空题10%
编程题15%
一 java 基础
1.将java源程序编译为目标代码采用的命令为 javac .
2.解析执行一个java 应用程序采用的命令为 java .
3.在命令行编译运行java 程序,需要设置的环境变量是 classpath和 path。
4.以下说法是否正确:
Java语言的语法和 C++类似,java 和C++都广泛使用了指针数据类型 (X)
5. java 中,下面不能作为标示符的是 (BE)
A. MyName B. int C.Int C D. _intC E. 3intA
6. java 关键字有 const, sizeof, super, void, double?(X)
7. java 的原始数据类型? (ACD)
A. short B.boolean C.byte D.float
8.创建4个float类型元素的数组。
float a[] = new float[4]
9. 运行程序
public class Test{
Static int a[] = new int [10];
public static void main (String args[]){
System.out.println (a[1]);
}
}
输出结果 : 0 //因为没有初始化,系统默认为0
二 表达式和程序结构
1.逻辑运算符优先级由高到低:非not,与and,或or
2. 如果 int a = 90;int b = 104; 表达式a=b的逻辑值为true 。表达式!(a>=b)的值true 。表达式(a==90)&&(b>105)的值 false。表达式(a==90)||(b>105)的值true 。
3.运行程序
int i = 2, j = 10;
do{ if ( i++ < --j ) continue; }
while ( i < 5 ); i= 5 j= 7
4. 运行程序
int i = 0, j = 3;
while (1){ i+=2;if (i>=10) break;j++;
}
i=10 j = 7
5. 运行程序
int x = -2 ;
if (x>0) {System.out.println ( “first” ) ; }
else if ( x> -3) {System.out.println ( “second” ) ; }
else {System.out.println ( “third” ) ; }
系统输出:second 。
6. int i = 2
展开阅读全文