1.编译Java 源程序文件产生的字节码文件的扩展名为(b)。
A、java B、class C、html D、exe
2.main方法是Java程序执行的入口点,关于main方法的方法头以下哪项是合法的(b)?
A、public static void main( )
B、public static void main( String args[] )
C、public static int main(String [] arg )
D、public void main(String arg[] )
3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(a)。
A、static void method( )
B、public void method( )
C、final void method( )
D、abstract void method( )
4.下列哪个是合法的Java标识符?(bc)
A、Tree&Glasses B、FirstJavaApplet
C、_$theLastOne D、273.5
5.Java源程序的主类是指包含有(a)方法的类。
A、main方法 B、toString方法
C、init方法 D、actionPerfromed方法
8.若a的值为3时,下列程序段被执行后,c的值是多少?(c)
c = 1;
if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;
A、1 B、2 C、3 D、4
10.对于构造函数,下列叙述不正确的是(b )。
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
11.下面的是关于类及其修饰符的一些描述,正确的是:(ac )。
A、abstract类只能用来派生子类,不能用来创建abstract类的对象。
B、final类不但可以用来派生子类,也可以用来创建final类的对象。
C、abstract不能与final同时修饰一个类。
D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
13.若在某一个类定义中定义有如下的方法: abstract void performDial( );该方法属于(d)。
A、本地方法 B、最终方法 C、解态方法 D、抽象方法
16.设有下面两个类的定义:
class Person { class Student extends Person {
long id; // 身份证号 int score; // 入学总分
String name; // 姓名 int getScore(){ } return score; }
}
问:类Person和类Student的关系是( b )。
A、包含关系 B、继承关系,
C、关联关系 D、无关系,上述类定义有语法错误
17. 设有下面的两个类定义:
class AA {
void Show(){ System.out.println("我喜欢Java!");
}
class BB extends AA {
void Show(){ System.out.println("我喜欢C++!"); }
则顺序执行如下语句后输出结果为:(a) AA a; BB b;
a.Show(); b.Show();
A、我喜欢Java! B、我喜欢C++! 我喜欢C++! 我喜欢Java!
C、我喜欢Java! D、我喜欢C++! 我喜欢Java! 我喜欢C++!
18.设有下面的一个类定义:
class AA {
static void Show( ){ System.out.println("我喜欢Java!"); }
}
class BB { void Show( ){ System.out.println("我喜欢C++!"); } }
若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:( )
A、a.Show( ) B、AA.Show( );
b.Show( ) BB.Show( );
C、AA.Show( ); D、a.Show( );
b.Show( ); BB.Show( );
19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为(c)。
A、隐藏 B、覆盖 C、重载 D、Java不支持此特性
20.对于构造函数,下列叙述正确的是(a)。
A、构造函数也允许重载。
B、子类无条件地继承父类的无参构造函数。
C、子类不允许调用父类的构造函数。
D、在同一个类中定义的重载构造函数可以相互调用。
21.在使用interface声明一个接口时,只可以使用(d)修饰符修饰该接口。
A、private B、protected
C、private protected D、public
25.在Java中,存放字符串常量的对象属于(b)类对象。
A、Character B、String
C、StringBuffer D、Vector
29.在编写异常处理的Java程序中,每个catch语句块都应该与(c)语句块对应,使得用该语句块来启动Java的异常处理机制。
A、if - else B、switch C、try D、throw
31.对于子类的构造函数说明,下列叙述中不正确的是(acd)。
A、子类无条件地继承父类的无参构造函数。
B、子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。
C、在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。
D、子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。
32.Java语言是(d)。
A.面向问题的解释型高级编程语言
B.面向机器的低级编程语言
C.面向过程的编译型高级编程语言
D.面向对象的解释型高级编程语言
33.下列的变量定义中,错误的是(d)。
A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$;
34.以下的变量定义语句中,合法的是(c)。
A) float $_*5= 3.4F;
B) byte b1= 15678;
C) double a =Double. MAX_VALUE;
D) int _abc_ = 3721L;
36.下列程序段执行后t5的结果是(b)。
int t1 = 9, t2 = 11, t3=8;
int t4,t5;
t4 = t1 > t2 ? t1 : t2+ t1;
t5 = t4 > t3 ? t4 : t3;
A) 8 B) 20 C) 11 D) 9
37.设 a, b, c, d 均为 int 型的变量,并已赋值,下列表达式的结果属于非逻辑值的
是(c)。
A) a!=b && c%d < a B) a++ = =a+b+c+d
C) ++a*b--+d D) a+b>=c+d
39.下列语句序列执行后,k的值是(d)。
int j=8, k=15;
for( int i=2; i!=j; i++ )
{ j-=2; k++; }
A) 18 B)15 C)16 D ) 17
41.下列语句序列执行后,k 的值是(b)。
int x=6, y=10, k=5;
switch( x%y )
{ case 0: k=x*y;
case 6: k=x/y;
case 12: k=x-y;
default: k=x*y-x;
}
A) 60 B) 54 C) 0 D) 5
42.下列语句序列执行后,a的值是(c)。
int a=13;
a%=a/5;
A) 3 B) 13 C) 1 D) 169
43. 既能作为类的修饰符, 也能作为类成员的修饰符的是(a)。
A) public B) extends C) Float D) static
44.下列选项中,用于定义接口的关键字是(c)。
A)import B) implements C) interface D) protected
45.下列类头定义中,错误的是(b)。
A) class x
{ .... }
B) public x extends y
{ .... }
C) public class x extends y
{ .... }
D) class x extends y implements y1
{ .... }
47.设 i,j 为类 x 中定义的 double 型变量名,下列 x 类的构造函数中不正确的是(a)。
A) double x(double k ){ i=k; return i; }
B) x(double m, double n ){ i=m; j=n; }
C) x( ){i=0;j=0 }
D) x(double k ){ i=k; }
48.下列方法定义中,不正确的是(d)。
A) public int x( ){ ... }
B) public static int x( double y ){ ... }
C) void x( double d ) { ... }
D) public static x( double a ){ ... }
49.能从循环语句的循环体中跳出的语句是(b)。
A) for 语句 B) break 语句 C) while 语句 D) continue语句
51. 定义类名时,不可能用到的关键字是(a)。
A) private B)class C)extends D)implements
52.在一个应用程序中有如下定义:int
a[]={1,2,3,4,5,6,7,8,9,10};,为了打印输出数组a的最后一个元素,下面正确的代码是(b)。
A) System.out.println(a[10]);
B) System.out.println(a[9]);
C) System.out.println(a[a.length]);
D) System.out.println(a(8));
53.若一个类中对某个方法进行了重载,能够区分这些重载方法的手段是 (c)。
A) 它们的返回值类型的不同 B) 它们的名称的不同
C) 它们的参数表的不同 D) 它们的修饰符不同
54.下面是有关子类继承父类,构造函数的描述,其中正确的是(d)。
A) 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。
B) 子类无条件地继承父类不含参数的构造函数。
C) 子类必须通过super关键字调用父类的构造函数。
D) 子类无法继承父类的构造函数。
55.下面说法正确的是( )。
A) final 可修饰类、属性、方法。
B) abstract可修饰类、属性、方法。
C) 定义抽象方法需有方法的返回类型、名称、参数列表和方法体。
D) 用final修饰的变量,在程序中可对这个变量的值进行更改。
56.下列哪个选项是合法的标识符?
A)123 B)_name C)class D)1first
59.下列的哪个赋值语句是不正确的?
A)float f = 11.1f; B)double d = 5.32;
C)float d = 3.14f ; D)double f=11.111d;
60.下列的哪个赋值语句是正确的?
A)char a=12; B)int a=12.0; C)int a=12.0f; D)int a=(int)12.0;
61.给出下列的代码,哪行在编译时可能会有错误? ① public void modify(){
② int i, j, k;
③ i = 100;
④ while ( i > 0 ){
⑤ j = i * 2;
⑥ System.out.println (" The value of j is " + j ); ⑦ k = k + 1;
⑧ }
⑨ }
A)line 4 B)line 6 C)line 7 D)line 8
62.下列关于继承的哪项叙述是正确的?
A)在java中允许多重继承
B)在java中一个类只能实现一个接口
C)在java中一个类不能同时继承一个类和实现一个接口
D)java的单一继承使代码更可靠
63.下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问?
A)private B)无修饰符 C)public D)protected
67. 下列代码的执行结果是
public class Test
{ public int aMethod()
{
static int i=0;
i++;
System.out.println(i);
}
public static void main(String args[]) {
Test test = new Test();
test.aMethod();
}
}
A)编译错误 B)0 C)1 D)运行成功,但不输出
80. 下列哪个选项的java源文件代码片段是不正确的?
A)package testpackage;
public class Test{ }
B)import java.io.*;
package testpackage;
public class Test{ }
C)import java.io.*;
class Person{ }
public class Test{ }
D)import java.io.*;
import java.awt.*;
public class Test{ }
一. 简答题.
1. 避免死锁的方法有哪些?
2. 在Sybase数据库中注册用户与数据库用户有什么区别?
3. 在MS SQL_Server 数据库中通过什么约束保证数据库的实体完整性
4. 内存有哪几种存储组织结构.请分别加以说明
5. JAVA中的Wait() 和notify()方法使用时应注意些什么?
6. 用户输入一个整数.系统判断,并输出是负数还是非负数,请设计测试用例.
7. 操作系统中的同步和互诉解决了什么问题
8. UNIX 中init
二. 编写类String 的构造函数,析构函数和赋值函数
已知类String 的原型为
class string
{
public:
string(const char *str=null);//普通构造函数
string(const string &other);//拷贝构造函数
---string(void);
string &operate=(const string &other);//赋值函数
private:
char * m-data;//用于保存字符串
};
请编写string 的上述4个函数
三. 有关内存的思考题
1. void getmemory(char *p)
{ p=(char*)mallol(100);
}
void test(void)
{
char * str =null;
getmemory(str);
strcpy(str,”hello,world”);
printf(str);
}
请问运行Test函数会有什么样的结果
2. char*getmemory(void)
{ char p[]=”hello world”;
return p;
}
void test(void)
{
char *str=null;
str=Getmemory();
printf(str);
} 请问运行Test 函数会有什么样的结果.
学习Java的同学注意了!!!
学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群346942462,我们一起学Java!