java编写打印机类,用多态实现打印机的功能,请问一下这个芝诺悖论错在哪里里?大学考试题目麻烦来个大神帮帮忙咯

北京邮电大学面向对象C++试题(北邮房鸣老师、赵晶玲老师版本)_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
北京邮电大学面向对象C++试题(北邮房鸣老师、赵晶玲老师版本)
上传于||暂无简介
阅读已结束,如果下载本文需要使用5下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩17页未读,继续阅读
你可能喜欢第三方登录:java基础试题跟答案1
第一组: 1.下面哪些是合法的变量名? (DEG) A.2variable //不能以数字开头 B. .variable2 //不能用点和空格 C. ._whatavariable //不能用点和空格 D._3_ E.$anothervar F.#myvar //#不能用来命名 G. $_¥ 2.请问 abcd instanceof Object返回的值是? (B)
1.下面哪些是合法的变量名? (DEG)
A.2variable&&&&&&&&&&&&& //不能以数字开头
B. .variable2&&&&&& //不能用点和空格
C. ._whatavariable&&&& //不能用点和空格
E.$anothervar&
F.#myvar&&&&&&&& //#不能用来命名
2.请问 &abcd& instanceof Object返回的值是? (B)
A. &abcd&& B. true& C. false& D. String
前面是后面的子类?
//java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。
3.下面说法正确的是:(A)
A. 如果源代码中有package语句,则该语句必须放在代码的第一行(不考虑注释和空格);
B. 如果源代码中有import语句,则该语句必须放在在代码的第一行(不考虑注释和空格) //先写包,再导入
C. 如果源代码中有main()方法,则该方法必须被放在代码的第一行 //先写包
D. 如果某文件的源代码中定义了一个public的接口,接口名和文件名可以不同。
4.下面有关方法覆盖说法不正确的是:(B)
A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值
B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限;
C. 覆盖的方法不能比被覆盖的方法抛出更多的异常
D. 覆盖的方法一定不能是private的
5.一个Java程序运行从上到下的环境次序是(C)
A. 操作系统、Java程序、JRE/JVM、硬件
B. JRE/JVM、Java程序、硬件、操作系统
C. Java程序、JRE/JVM、操作系统、硬件
D. Java程序、操作系统、JRE/JVM、硬件
6. 下面选项中哪个关键字可以用来修饰接口中的变量和方法?(A)
A. static& B. private& C. synchronized D. protected
7. 下面代码段中:(A)
String String=&String&;&&& //String 可以做变量名
System.out.println(String);
A. String& B. 不知道& C. 编译出错 D. 运行出错
8. 下面哪种是正确的创建Map集合的方式:(D)
A. Map m=new Map();
B. Map m=new Map(init capacity, increment capacity);
C. Map m=new Map(new Collection());
D. Map是接口,所以不能实例化。
9.关于被私有保护访问控制符protected修饰的成员变量,以下说法正确的是? (A)
A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类&
B. 可以被两种类访问和引用:该类本身、该类的所有子类
C. 只能被该类自身所访问和修改
D.只能被同一个包中的类访问
10.下列有关继承的说法。正确的是:(B)
A. 子类能继承父类的所有方法和属性;
B. 子类能继承父类的非私有方法和属性&
C. 子类只能继承父类public方法和属性
D. 子类能继承父类的方法,而不是属性。
11.对于构造方法,下列叙述正确的是:(AC)
A. 构造方法的方法名必须与类名相同;
B. 构造方法必须用void申明返回类型 (没有返回类型)
C. 构造方法可以被程序调用
D. 若编程人员没再类中定义构造方法,程序将报错。
12.为了区分类中重载的同名的不同的方法,要求:(A)
A. 采用不同的形式参数列表
B. 返回值得数据类型不同 (与返回值无关)
C. 调用时用类名或者对象名做前缀
D. 参数名不同 (参数列表---参数个数,参数类型)
13.下面是有关子类继承父类构造函数的描述,其中正确的是:(C)
A. 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。 (先调用父类的构造函数)
B. 子类可以不调用父类的构造函数(子类的构造函数默能调用父类的无参数的构造函数)
C. 子类必须通过super()关键字调用父类的构造函数
D. 子类无法继承父类的构造函数。 (同上)
14. 下列说法中,正确的是:(A)
A. 类是变量和方法的集合体
B. 数组是无序数据的集合 (类型(type)可以为Java中任意的数据类型,包括简单类型组合类型)
C. 抽象类可以实例化
D. 类成员数据必须是公有的
1.下列不可作为java语言标识符的是(D)
A) a1&&&&&&& B) $1&& C) _1&&&&&&&&&& D) 11(不能以数字开头)
2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)
A) a1.java&& B) a1.class&&& C) a1&&&& D) 都对
3.整型数据类型中,需要内存空间最少的是(D)
A) short (2个字节)&&& B) long(8个字节)&&&& C) int (4个字节)&&&&& D) byte& (1个字节)
4. Java 类可以作为(C)
A) 类型定义机制
B) 数据封装机制
C) 类型定义机制和数据封装机制
D) 上述都不对
5.在创建对象时必须(C)
A) 先声明对象,然后才能使用对象
B) 先声明对象,为对象分配内存空间,然后才能使用对象
C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象
D) 上述说法都对
**6.在调用方法时,若要使方法改变实参的值,可以(B)
A) 用基本数据类型作为参数
B) 用对象作为参数
C) A和B都对
D) A和B都不对
7. Java中(C)
A) 一个子类可以有多个父类,一个父类也可以有多个子类 (只可以单继承)
B) 一个子类可以有多个父类,但一个父类只可以有一个子类
C) 一个子类可以有一个父类,但一个父类可以有多个子类
D) 上述说法都不对
8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B)
A) 安全性&&&&&&&&&&& B) 多线性&&&&&&&&&&& C) 跨平台&&&&&&&&&&& D) 可移植
**9. Character流与Byte流的区别是(C)
A) 每次读入的字节数不同&&&&& B) 前者带有缓冲,后者没有
C) 前者是字符读写,后者是字节读写&& D) 二者没有区别,可以互换使用
10.以下声明合法的是(& D )
A、default& String& s;&&
B、public& final& static& void& int& w( )
C、double& abstract& d;&&&&&&&&&&&&&&
D、abstract& final& double& hyperbolicCosine( )
***11.关于以下application的说明,正确的是(&&& C&&& )
1.& class&& StaticStuff
3.&&&&&&&&&&&&&&&&& static& int& x=10;
4.&&&&&&&&&&&&&&&&& static& { x+=5;}
5.&&&&&&&&&&&&&&&&& public& static& void& main(String& args[ ])
6.&&&&&&&&&&&&&&&&& {
7.&&&&&&&&&&&&&&&&&&&&&& System.out.println(&x=& + x);
8.&&&&&&&&&&&&&&&&& }
9.&&&&&&&&&&&&&&&&& static& { x/=3;}
A、4行与9行不能通过编译,因为缺少方法名和返回类型&&
B、9行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:x=5
D、编译通过,执行结果为:x=3
12.关于以下程序代码的说明正确的是(&& D&& )
1.class& HasStatic{
2.&&& private& static& int& x=100;
3.&&& public& static& void& main(String& args[& ]){
4.&&&&&&& HasStatic& hs1=new& HasStatic(& );
5.&&&&&&& hs1.x++;
6.&&&&&&& HasStatic& hs2=new& HasStatic(& );
7.&&&&&&& hs2.x++;
8.&&&&&&& hs1=new& HasStatic( );
9.&&&&&&& hs1.x++;
10.&&&&&& HasStatic.x- -;
11.&&&&&& System.out.println(&x=&+x);
A、 5行不能通过编译,因为引用了私有静态变量
B、 10行不能通过编译,因为x是私有静态变量
C、 程序通过编译,输出结果为:x=103
D、 程序通过编译,输出结果为:x=102
13.以下选项中循环结构合法的是(&&& C&&& )
A、while (int& i&7)
{&&&& i++;
&&&& System.out.println(&i is &+i);
B、 int& j=3;
System.out.println(& j& is &+j);
C、int& j=0;
for(int& k=0; j + k !=10; j++,k++)
System.out.println(& j& is &+ j + &k& is&+ k);
D、& int& j=0;
&&&&& System.out.println( &j& is &+j++);
&&&&& if (j = = 3) {continue&}
}while& (j&10);
14.&&&& 类Test1定义如下: 1.public& class& Test1{
2.&&&&&&&& public& float& aMethod(float& a,float& b){&& }&
4.}&&&&&&&
将以下哪种方法插入行3是不合法的。(&&& B&&& )
A、public& float& aMethod(float& a, float& b,float& c){& }
B、public& float& aMethod(float& c,float d){& }
C、public& int& aMethod(int& a, int b){& }
D、private float aMethod(int a,int b,int c){& }
15.&&&& 类Test1、Test2定义如下:
1.& public& class& Test1
2.{ public& float& aMethod(float a,float b) throws
3.& IOException {&&&&& }
5. public& class& Test2& extends& Test1{
将以下哪种方法插入行6是不合法的。(& A& )
A、float& aMethod(float& a,float& b){ }
B、public& int& aMethod(int a,int b)throws& Exception{ }
C、public& float& aMethod(float& p,float q){ }
D、public& int& aMethod(int a,int& b)throws IOException{ }
***16.&&&& 关于以下程序段,正确的说法是(&& C&& )
1.& String& s1=&abc&+&def&;
2.& String& s2=new& String(s1);
3.& if(s1= =s2)
4.&&&& System.out.println(&= = succeeded&);&
5.& if (s1.equals(s2))
6.&&&& System.out.println(&.equals()& succeeded&);
A、行4与行6都将执行&&&&&&&&&&& B、行4执行,行6不执行
C、行6执行,行4不执行&&&&&&&& C、行4、行6都不执行
17.&&&& Java application中的主类需包含main方法,main方法的返回类型是什么?( D )
A、int&&&&&&&&&&&&&&&&& B、float&&&&&&&&&&&&&&& C、double&&&&&&&&&&&& D、void
18.&&&& 以下哪个方法用于定义线程的执行体? (&& C&& )
A、 start()&&&&&&&&&&& B、init()&&&&&&&&&&&&&& C、run()&&&&&&&&&&&&&& D、synchronized()&
19.&&&& 以下标识符中哪项是不合法的(&&& A&&&& )
A、contst&&&&&& B、$double&&&& C、hello&& D、BigMeaninglessName&& ( const和goto是Java的保留的关键字,不可做标识符)
20.&&&& 以下哪个关键字可以用来为对象加互斥锁?(& D&& )
A、transient&&&&&&&& B、static&&&&&&&&&&&&&& C、 serialize&&&&&&&& D、synchronized
21.& 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为(& C& )。
A、隐藏&&&&&&&&&&&&& B、覆盖&&&&&&&&&&&&&& C、重载&&&&&&&& D、Java不支持此特性
22.&&&& 以下关于构造函数的描述错误的是(& A& )。
A、构造函数的返回类型只能是void型。(构造函数没有返回类型)
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
23.&&&& 下列哪些语句关于Java内存回收的说明是正确的? (& B& )
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存 (垃圾回收站自动回收,释放)
D、内存回收程序可以在指定的时间释放内存对象
24.&&&& 若需要定义一个类域或类方法,应使用哪种修饰符?(& C&& )
A、static&&&&&&&&& B、package&&&&&&&&& C、private&&&&&&&&&&&& D、public
25.&&&& 有以下方法的定义,请选择该方法的返回类型(& D& )。
ReturnType& method(byte x, double y)&&&&&&&&&&&&&&&&&&&&&&&&&&& {
&&& return& (short)x/y*2;
A、byte&&&&&&&&&&&&&&& B、short&&&&&&&&&&&&&& C、int&&&&&&&&&&&&&&&&&& D、double
1.&&&&&&&& 有以下程序片段,下列哪个选项不能插入到行1。(&& D&& )
2.public& class& Interesting{
3.//do sth&&&
4. }&&&& (只能有一个public修饰的class)
A、import java.awt.*;&&&&&&&&& B、&&&&&&&&&&&&&&
C、class OtherClass{&& }&&&& D、public class MyClass{ }
2.&&&&&&&& 以下哪项是接口的正确定义?(&& B D&&& )
A、 interface& B
{& void print(){};} (接口里的方法都是抽象的,不能有方法体)
B、 abstract& interface& B
{ void print() ;}
C、 abstract& interface& B& extends& A1,A2& //A1、A2为已定义的接口
{ abstract& void& print(){& };}& (同上)
D、 interface& B
&&&&& {& void& print();}
3. 下面哪个函数是public void& aMethod(){...}的重载函数?(& D& )
A、void& aMethod( ){...}
B、public int& aMethod(){...}
C、public void& aMethod ( ){...}
D、public int& aMethod ( int m){...}
(重载:定义同名的方法,方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同)
4.&& 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行的声明都是正确的&
(A是B的父类,也算是C的父类)
5.& 假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?(& C& )
{&&&& int&
&&&&& static& String&
&&&&&& void& method1() {&& }
&&&&&& static& void& method2()& {&& }
A、System.out.println(a.i);B、a.method1();& C、A.method1();
& D、A.method2() (A是类名,应该调用对象a)
6.&&&&& 有如下代码段:&
2) { if(unsafe()){//do something&}&
3) else if(safe()){//do the other&}&
其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第1行?(& D& )
A、 public IOException methodName()&&&&&
B、 public void methodName()&
C、public void methodName() throw IOException&
D、public void methodName() throws IOException
7. Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(& C& )个比特位。
A、8&&&&&&&&&&&&&&&&&&& B、16&&&&&&&&&&&&&&&& C、32&&&&&&&&&&&&&&&&&& D、64
8.& 以下关于继承的叙述正确的是(& A& )。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口 (可以实现多个接口)
C、在Java中一个类不能同时继承一个类和实现一个接口 (可以的)
D、在Java中接口只允许单一继承 (可以继承多个接口)
9.&& 给出下面代码,关于该程序以下哪个说法是正确的?(& C& )
public class Person{&
static int arr[] = new int[5];
public static void main(String a[]) {&
System.out.println(arr[0]);}
A、编译时将产生错误&&&&&&& B、编译时正确,运行时将产生错误
C、输出零&&&&&&&&&&& D、输出空 (输出数组的首地址arr[0],int类型的初始值为0)
10. 在使用interface声明一个接口时,只可以使用(& D& )修饰符修饰该接口。
A、private&&&&&&&&&&& B、protected&&&&&&&& C、private& protected&& D、public (接口只能和public 和abstract关键字连用 )
11. 编译并运行以下程序,以下描述哪个选项是正确的(& D& )
1.& class& A{
2.&&&&& protected& boolean& equals(){
3.&&&&&&&&&& return& super.equals();
5. }&&& (只有调用父类非私有属性和方法时才使用到super)
A、编译通过运行无异常&&&& B、编译通过但运行时出错
C、行2出错,不能成功编译&&&& D、不能成功编译,行3出错
12.& 有语句String s=&hello world&; ,以下操作哪个是不合法的?(& B& )
A、int i=s.length();&&&&&& B、s&&&=3;(&&&为无符号右移运算符,去掉&=&号)
& C、String ts=s.trim();&&& D、String t=s+&!&;
13.&&&& 下列关于Java语言的特点,描述错误的是(& C& )
A.Java是跨平台的编程语言&&&&&& B.Java支持分布式计算
C.Java是面向过程的编程语言(面向对象)&& D.Java支持多线程
14.&&&& 下述概念中不属于面向对象方法的是(& D& )。
A.对象、消息&&& B.继承、多态&&&&& C.类、封装&&&& D.过程调用 (过程调用是属于过程方法)
15.&&&& 结构化程序设计所规定的三种基本控制结构是 (& C& )
A.输入、处理、输出&&&&&&&&&&&&&&&&&&&& B.树形、网形、环形
C.顺序、选择、循环&&&&&&&&&&&&&&&&&&&& D.主程序、子程序、函数
16.&&&& 下列关于构造方法的叙述中,错误的是(&& C&& )
A.Java语言规定构造方法名与类名必须相同
B.Java语言规定构造方法没有返回值,但不用void声明
C.Java语言规定构造方法不可以重载
D.Java语言规定构造方法只能通过new自动调用
17.&&&& 下列哪个类的声明是正确的?(& D& )
A.abstract final class HI{} (final代表常量,但是抽象类不能实例化)
B.abstract private move(){} (这是定义方法的)&&&
C.prot&& (不是定义类,且修饰符重复)
D.public abstract class Car{}
18.&&&& 关于被私有访问控制符private修饰的成员变量,以下说法正确的是(& C& )
A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B.可以被两种类访问和引用:该类本身、该类的所有子类
C.只能被该类自身所访问和修改
D.只能被同一个包中的类访问
19.&&&& 下列关于for循环和while循环的说法中哪个是正确的?(& B& )
A.while循环能实现的操作,for循环也都能实现
B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果
C.两种循环任何时候都可替换
D.两种循环结构中都必须有循环体,循环体不能为空
20.&&&& 阅读以下代码:
import java.io.*;
import java.util.*;
public class foo{
public static void main (String[] args){
System.out.println(&s=& + s);
输出结果应该是:(& C& )
A.代码得到编译,并输出&s=& ( 代码不能编译通过)
B.代码得到编译,并输出&s=null&&
C.由于String s没有初始化,代码不能编译通过
D.代码得到编译,但捕获到 NullPointException异常
21.&&&& 编译运行以下程序后,关于输出结果的说明正确的是 (& C& )
&&&&&& public& class&& Conditional{
&&&&&&&&&& public& static& void& main(String& args[ ]){
&&&&&&&&&& int& x=4;
&&&&&&&&&& System.out.println(&value& is& &+ ((x&4) ? 99.9:9));
A.输出结果为:value& is& 99.9&&&&& B.输出结果为:value& is& 9
C.输出结果为:value& is& 9.0(判断为false时取&:&后面的值9,又因为有99.9double类型,最后值类型也为double)&&
D.编译错误
22. 执行完以下代码int [ ]& x = new int[10];后,以下哪项说明是正确的(& A& )
A.x[9]为0
B.x[9]未定义 (new出数组后未赋值,则系统默认int类型数据为0)
C.x[10]为0 (下标越界,数组下标是从0开始的)
D.x[0]为空 (同B)
** 23.&&&& 关于以下程序段,正确的说法是(& C& )
1.& String& s1=&a&+&b&;
2.&& String& s2=new& String(s1);
3.&&& if(s1= =s2)
4.&&&&&& System.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不执行&&&&&&&& C.行4、行6都不执行
24.&&&& 以下程序的运行结果是:(& C& )
public class Increment{
&&&&&& public static void main(String args[]){
System.out.println(c);&& //2
System.out.println(c++);&& //2
System.out.println(c);&& //3
}&&&& c++& --&是先取值再运算
A.2 2 2&&&&&&&&& B.2 3 3&&& C.2 2 3&& D.3 4 4
25.&&&& 下列哪一个关键字用于实现接口来定义类? (& B& )
A、extends (继承)& B、implements(实现)&& C、abstract(抽象)&&&& D、interface (接口)
1.&&&& 若a的值为3时,下列程序段被执行后,c的值是多少?(& C& )
&&& if ( a&0 )&&
&&&&&&& if ( a&3 )& c = 2;&&&
&&&&&& else c = 3;&
&&&& else c = 4;&&
A、1&&&&&&&&&& B、2&&&&&&&&& C、3&&&&&&&&& D、4
2.&&&&& 下面哪一个操作符的优先级最高?& (& D& )
&&&&&& A、&&&&&&&&&&&&&&&&&&&&&&&& B、||
&&&&&& C、!&&&&&&&&&&&&&&&&&&&&&&&&& D、( )
3. 下列方法头中哪一个不与其他方法形成重载(overload)关系?(& D& )
&&&&&& A、void mmm()&&&&&&&&&&&&&& B、void mmm(int i)
&&&&&& C、void mmm(String s)&&&& D、int mm() (方法名不一样)
4.&& 编译Java程序的命令是:&&&&&&&&&&&&&&&&& (& B& )
&&&&&& A、appletviewer&&&&&&&&&&&&&& B、javac
&&&&&& C、java&&&&&&&&&&&&&&&&&&&&& D、javadoc
5.编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(& B& )。
&&&&&& A、.byte&&&&&&&&&&&&&&&&&&&&& B、.class
&&&&&& C、.html&&&&&&&&&&&&&&&&&&&&& D、.exe
6.&& 执行语句int i = 1, j = ++i; 后i与j的值分别为(& D& )。
&&&&&& A、1与1&&&&&&&&&&&&&& B、2与1
&&&&&& C、1与2&&&&&&&&&&&&&& D、2与2 (++i先运算再取值)
7.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[] )
8.&&&&&&&& 下列哪个选项不是Java语言的特点?(& D&& )
A、面向对象&&&&&&& B、高安全性&&&&&&& C、平台无关&&&&&&& D、面向过程 (面向对象)
9.&&&&&&&& 下列哪个是合法的Java标识符?(& B& )
& A、Tree&Glasses (标识符没有&&&号)&&& B、FirstJavaApplet
& C、*theLastOne&& (标识符里不能有&*&)&&&&&&
& D、273.5 (不能以数字开头,标识符不包含点)
10.&&&& 下面的选项中,哪一项不属于&汽车类&的行为(& D& )。
& A、启动&&&&&& B、刹车&&&&& C、减速&&& D、速度(属于属性)
11.&&&& 下面哪一个循环会导致死循环?(& C& )
A、for (int k = 0; k & 0; k++)&&&&
B、for (int k = 10; k & 0; k--)
C、for (int k = 0; k & 10; k--)& (没有指定范围,会一直自减,减到负数........)&
D、for (int k = 0; k & 0; k++)
12.&&&& 有如下程序段:
&&&&&& int a = b = 5;
&&&&&& String s1 = &祝你今天考出好成绩!&;
&&&&&& String s2 = s1;
则表达式a == b与s2 == s1的结果分别是:(& A& )。
&&&&&& A、true与true&&&&&&&&&&&&&& B、false与true&
&&&&&& C、true与false&&&&&&&&&&&&&&& D、false与false
13. 在Java中用什么关键字修饰的方法可以直接通过类名来调用?(& A& )
& A、static&&&&&&&& B、final&&&&&& C、private&&&&&&&&& D、void
14.若在某一个类定义中定义有如下的方法:abstract void performDial( );该方法属于(& C& )。
A、接口方法&&&&&&& B、最终方法&&&&&&& C、抽象方法&&&&&&& D、空方法
15.&&&& 有如下程序段:
int total = 0;
for ( int i = 0; i & 4; i++ ){
& if ( i == 1) (i=1时,跳出本次循环)
& if ( i == 2) (跳出循环,不再执行)&&&&&&&&&&&&&&&&&&&&&&&&&&
& total +=
则执行完该程序段后total的值为:(& A& )。
A、0&&&&&&&&&&&&&&&&&&& B、1&&&&&&&&&&&&&&&&&&&& C、3&&&&&&&&&&&&&&&&&&&& D、6
16.如果希望某个变量只可以被类本身访问和调用,则应该使用下列哪一种访问控制修饰(A)。
&&& A、private&&&&&&&&&&&&&&&&&&& B、protected
&&& C、private& protected&&&&&&&& D、public
17.&&&& 在Java中,&456&属于(& B& )类的对象。
A、int&&&&&&&& B、String&&&&&&& C、Integer&&&&&& D、Number
18.&&&& System.out.println(&5& + 2);的输出结果应该是(& A& )。
A、52& (有字符串时,&+&则表示是连接符)&
B、7&&&&&&&&&&&&&&&& C、2&&&&&&&&&&&&&&&&& D、5
19.&&&& 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB
作为前缀就可以调用它,该方法头的形式为(& A& )。
&&& A. static& void& method( )&&&&&&&&&&&&&&&&&&& B. public& void& method( )
&&& C. final& void& method( )&&&&&&&&&&&&&&&&&&& D. abstract& void& method( )
20.&&&& 下面声明数组的写法错误(C D& )。
A& int& a[ ];&&&&&&&&&&&&&&&& B:& int[ ]&
C& int[3][ ]&&&&&&&&&&&&&&& D;& int[ ][3]
21.&&&& 设x为float型变量,y为double型变量,a为int型变量,b为long型变量, c为
char型变量,则表达式x+y*a/x+b/y+c的值为(& C&& )类型。
&&& A& int&&&&&&&&&&&&&&&&&&&&&&&& B long
C& double (double字节最长)&&&&&&& D char
22.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( B )
A、ArrayList myList=new Object();
B、List myList=new ArrayList();
C、ArrayList myList=new List();
D、List myList=new List();
23.&&&& 指出正确的表达式 (C)
A、 byte=128;& (数据超出byte类型范围)
B、 Boolean=& (只能为false或者是true)
C、 long l=0xfffL;&
D、 double=0.9239d;& (不需要加d)
24.&&&& 指出下列程序运行的结果 (& B& )
public class Example{&
&&& String str=new String(&good&);&
&&&& char[] ch = {'a','b','c'};&
&&&& public static void main(String args[]){&
&&&&&&&& Example ex=new Example();&
&&&&&&&& ex.change(ex.str,ex.ch);& (ex.str,ex.ch被当作参数,所以下面的赋值没有作用)
&&&&&&&& System.out.print(ex.str+& and &); good&&&&&&&&& Sytem.out.print(ex.ch); abc
&&& public void change(String str,char ch[]){&
&&&&&&&& str=&test ok&;&
&&&&&&&& ch[0]='g';&
A、 good and abc&
B、 good and gbc&
C、 test ok and abc&
D、 test ok and gbc&
25.&&&& 运行下列程序, 会产生什么结果 (& D& )
public class X extends Thread implements Runnable{&
&&&& public void run(){&
&&&&&&&& System.out.println(&this is run()&);&
&&&& public static void main(String args[]) {&
&&&&&&&& Thread t=new Thread(new X());&
&&&&&&&& t.start();&
A、 第一行会产生编译错误&
B、 第六行会产生编译错误&
C、 第六行会产生运行错误&
D、 程序会运行和启动&
***1.要从文件&file.dat&中读出第10个字节到变量c中,下列哪个方法适合? (D)
A、 FileInputStream in=new FileInputStream(&file.dat&); in.skip(9); int c=in.read();&
B、 FileInputStream in=new FileInputStream(&file.dat&); in.skip(10); int c=in.read();&
C、 FileInputStream in=new FileInputStream(&file.dat&); int c=in.read();&
D、 RandomAccessFile in=new RandomAccessFile(&file.dat&); in.skip(9); int c=in.readByte();&
2.&&&&&&&& Java编程所必须的默认引用包为(& B& )
A. java.sys包
B. java.lang包
C. java.util包 (工具包)
D.以上都不是
3.&&&&&&&& 下面语句在编译时不会出现警告或错误的是(& 全错& )
A. float f=3.14;&&& (数字后面要加f)
B. char c=&c&;&&&& (单引号)
C. Boolean b=&&& (只能为false或者是true)
D. int i=10.0;&&&&& (10.0不是int类型)
4.&&&&&&&& 下面不是合法标识符的是(& A& )
A. 2ofUS&&&& (不能以数字开头)
B. giveMes&&& C. whataQuiz&&& D. $d2000_&
5.&&&&&&&& 下面哪一个是合法的数组声明和构造语句(& C& )
A. int[] ages = [100];
B. int ages = new int[100];
C. int[] ages = new int[100];
D. int() ages = new int(100);&
6.&&&&&&&& 下面说法不正确的是(& C& )
A. 一个子类的对象可以接收父类对象能接收的消息;
B. 当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;
C. 父类比它的子类的方法更多; (子类继承父类的非私有属性和方法,并且可以重写方法)
D. 子类在构造函数中可以使用super( )来调用父类的构造函数;
7.&&&&&&&& 给出下面代码段, 哪行将引起一个编译时错误?(& D& )
1) public class Test {&
2)&& int n = 0;&
3)&& int m = 0;&
4)&& public Test(int a) { m=a; }&
5)&& public static void main(String arg[]) {&
6)&&&& Test t1,t2;&
7)&&&& int j,k;&
8)&&&& j=3; k=5;&
9)&&&& t1=new Test();&&&&&&&&&& 没有传参
10)&&& t2=new Test(k);&
A. 行1&&&&&&&&&&&&&&&& B. 行4&&&&&&&&&&&&&&&& C. 行6&&&&&&&&&&&&&&&& D. 行9
8.&&&&&&&& 下面程序中类ClassDemo中定义了一个静态变量sum,分析程序段的输出结果。
class ClassDemo {
&& public static int sum=1;
&& public ClassDemo() {
&&&&& sum = sum + 5;&& //sum=6
public class ClassDemoTest{
&& public static void main(String args[]) {
&& ClassDemo demo1=new ClassDemo();
&& ClassDemo demo2=new ClassDemo();
&& System.out.println(demo1.sum);&& //调用sum方法,此时sum=6,执行sum=sum+5;则sum=11
A. 0&&&&&&&&&&&&&&&&&&&&& B. 6&&&&&&&&&&&&&&&&&&&&& C. 11&&&&&&&&&&&&&&&&& D. 2
9.下面这些类型的应用,那个不使用Java语言来编写? (& A& )
A)JavaScript&&&& B)Applet& C)Servlet&&&&&&&&&&&&&&&&&&&&&&& D)Java Swing
10.&&&& 声明成员变量时,如果不使用任何访问控制符(public, protected, private),则以下哪种
类型的类不能对该成员进行直接访问 (&& D& )
A)同一类&&&&&&&&&&&&&&&&&&&&&&&& B)同一包中的子类
C)同一包中的非子类&&&&&&&&&&&&&& D)不同包中的子类
*11.&&&& 下列哪种异常是检查型异常,需要在编写程序时声明 (& C& )
A)NullPointerException&&&&&&&&&&&&& B)ClassCastException
C)FileNotFoundException&&&&&& D) IndexOutOfBoundsException
12.&&&& 下面哪个流类属于面向字符的输入流(& D& )
A)BufferedWriter&&&&&&&&&&&&&&&& B)FileInputStream
C)ObjectInputStream&&&&&&&&&&&&& D) InputStreamReader
13.&&&& 下面关于数组声明和初始化的语句那个有语法错误?(& C& )
A)int a1[]={3,4,5};
B)String a2[]={&string1&,&string1&,&string1&};
C)String a3[]=new String(3);
D)int[][] a4=new int[3][3];
14.&&&& 下面哪一行代码正确的声明了一个类方法(静态方法)?(&& D&& )
A)public int method(int i)
B)protected method(int i)
C)public static method(String s)&&& (没有返回值)
D)protected static void method(Integer i)
**15.&&&& 下面的方法,当输入为2的时候返回值是多少?(& D& )
&&& public int getValue(int i) {
&&&&&&& int result = 0;
&&&&&&& switch (i) {
&&&&&&&&&&& case 1:
&&&&&&&&&&&&&&& result = result +
&&&&&&&&&&& case 2:
&&&&&&&&&&&&&&& result = result + i * 2;
&&&&&&&&&&& case 3:
&&&&&&&&&&&&&&& result = result + i * 3;
A)0&&&&&&&&&&&&&&&&&&& B)2&&&&&&&&&&&&&&&&&&& C)4&&&&&&&&&&&&&&&&&&&& D)10
16.&&&& getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果(& A& )
&&& public void getCustomerInfo() {&
&&&&&&&&& try {&
&&&&&&&&&&&&& // do something that may cause an Exception&
&&&&&&&&& } catch (java.io.FileNotFoundException& ex){&
&&&&&&&&&&&&&&& System.out.print(&FileNotFoundException!&);&
&&&&&&&&& } catch (java.io.IOException& ex){&
&&&&&&&&&&&&&&& System.out.print(&IOException!&);&&&&&&&&&&& } catch (java.lang.Exception& ex){&
&&&&&&&&&&&&&&& System.out.print(&Exception!&);&
&&&&&&&&& }
A)IOException!
B)IOException!Exception!
C)FileNotFoundException!IOException!
D)FileNotFoundException!IOException!Exception!
17.&&&& 新建一个流对象,下面哪个选项的代码是错误的?(& B& )
A)new BufferedWriter(new FileWriter(&a.txt&));
B)new BufferedReader(new FileInputStream(&a.dat&));
C)new GZIPOutputStream(new FileOutputStream(&a.zip&));
D)new ObjectInputStream(new FileInputStream(&a.dat&));
18.&&&& Java的集合框架中重要的接口java.util.Collection定义了许多方法。选项中哪个方法
不是Collection接口所定义的?(& C& )
A)int size()
B)boolean containsAll(Collection c)
C)compareTo(Object obj)
D)boolean remove(Object obj)
19.&&&& 一个线程在任何时刻都处于某种线程状态(thread state),例如运行状态、阻塞状态、
就绪状态等。一个线程可以由选项中的哪种线程状态直接到达运行状态?(& D& )
A)死亡状态
B)阻塞状态(对象lock池内)
C)阻塞状态(对象wait池内)
D)就绪状态
20.&&&& 选项中哪一行代码可以替换题目中//add code here而不产生编译错误?(& A& )
public abstract class MyClass {
&&&&&&&&&& public int constInt = 5;
&&&&&&&&& //add code here
&&&&&&&&&& public void method() {
&&&&&&&&&&&&&& }
A)public abstract void method(int a);
B)value = value + 5;&& (未定义该变量)
C)public int method();
D)public abstract void anotherMethod() {}
21.&&&& File类是IO包中唯一表示磁盘文件信息的对象,它定义了一些与平台无关的方法
来操纵文件。通过调用File类提供的各种方法,我们能够创建、删除文件、重命名文件、
判断文件的读写权限及是否存在,设置和查询文件的最近修改时间等。下面的代码片段实现
的是什么功能?(& B& )
File file = new File(&C:\\test.dat&);
&&&&&&&&&&&&& if (file.exists()) {
&&&&&&&&&&&&&&&&&&&& file.delete();
&&&&&&&&&&&&& } A)创建C:\test.dat。
B)&&& 删除C:\test.dat。
C)&&& 打开C:\test.dat文件输出流。
D) 移动C:\test.dat
22.&&&& 阅读Shape和Circle两个类的定义。在序列化一个Circle的对象circle到文件时,
下面哪个字段会被保存到文件中? (& B& )
class Shape {
&&&&&&&&&& public S
class Circle extends Shape implements Serializable{
&&&&&& public static String type = &Circle&;
B)radius (私有的)
***23.&&&& 下面是People和Child类的定义和构造方法,每个构造方法都输出编号。在执行new
Child(&mike&)的时候都有哪些构造方法被顺序调用?请选择输出结果 (& D& )
class People {
&&&&&& public People() {& System.out.print(1); }
&&&&&& public People(String name) {
&&&&&&&&&&&&& System.out.print(2);
&&&&&&&&&&&&& this.name =
class Child extends People {
&&&&&& public Child(String name) {
&&&&&&&&&&&&& System.out.print(3);
&&&&&&&&&&&&& this.name =
&&&&&&&&&&&&& father = new People(name + &:F&);
&&&&&& public Child(){ System.out.print(4); }
A)312&&&&&&&&&&&&& B) 32
C)&&& 432&&&&&&&&&&&&& D) 132
24.&&&& 下面哪个选项中的代码没有定义内部类,或者错误的定义了内部类? (& C& )
A)public Class Line {
&&&&& Class Point {//内部类代码}
} B)&&& public Class Line {
&&&&& public Point getPoint() {
&&&&&&&& return new Point(){//内部类代码};
C)&&& public Class Line {
&&&&&&&&&&&&& //外部类代码
Class Point {//内部类代码}&&& (内部类应该包在外部类中)
D) public Class Line {
&&&&& public int calcLength() {
&&&&&&&& Class Point {//内部类代码}
***25.&&&&& list是一个ArrayList的对象,哪个选项的代码填写到//todo delete处,可以在Iterator
遍历的过程中正确并安全的删除一个list中保存的对象?(& D& )
&&&&&& Iterator it = list.iterator();
&&&&&& int index = 0;
&&&&&& while (it.hasNext()){
&&&&&&&&&&&&& Object obj = it.next();
&&&&&&&&&&&&& if (needDelete(obj)) { //needDelete返回boolean,决定是否要删除
&&&&&&&&&& //todo delete
&&&&&&&&&&&&& }
&&&&&&&&&&&&& index ++;
A)list.remove(obj);
B)list.remove(index);
C)list.remove(it.next());
D)it.remove();
面试就不说了
,就笔试而言,参加的很多招聘给我的感觉就是和学校期末考基本没什么区别,大都
考一些很基本的东西,当然是对应届生而言,除此之外就是多出来一些智力题和IT名词,对于智力
题,用同事的话来说是用来玩你的,在我看来也无关紧要,IT名词的话可以多用GOOGLE查看一
下,费点时间,也不是很难记,大概了解一下有东西扯就OK.就突击基础知识而言,我是没有兴趣从
头到尾看一遍JAVA的,话说回来,现在的笔试出题者和期末考的命题者一样懒,很多都是网上流
传N久的东西,所以我决定从网上捞一些试题做做,排查知识点的盲区,这样比较有针对性.
一、单项选择题&
& 1.Java是从()语言改进重新设计。&& A.Ada B.C++ C.Pasacal D.BASIC
& 答案:B 这个题没什么难度,虽然我只了解C++,当初老师也就只拿JAVA和C++比较.
ADA: 美国军方为了整合不同语言开发的系统而发明的一种语言,最大的特点是实时性,在
ADA95中已加入面向对象内容.
Pascal: 为提倡结构化编程而发明的语言,结构化特色非常明显,函数体内允许任意层次的嵌套.
BASIC: 为了让大学生简单容易控制电脑开发的语言,特点是简单易懂,且可以用解释和编译两
种方法执行.
& 2.下列语句哪一个正确()
& A. Java程序经编译后会产生machine code
& B. Java程序经编译后会产生byte code
& C. Java程序经编译后会产生DLL
& D.以上都不正确
& 答案:B&
.JAVA文件被JAVAC编译为.CLASS后缀的字节码文件,再由JVM执行.
& 3.下列说法正确的有()
& A. class中的constructor不可省略
& B. constructor必须与class同名,但方法不能与class同名
& C. constructor在一个对象被new时执行
& D.一个class只能定义一个constructor
CONSTRUCTOR既构造函数,JAVA提供默认的空构造函数,故可以省略.constructor必须重
名,constructor可以重载.
& 4.提供Java存取数据库能力的包是()
& A.java.sql B.java.awt C.java.lang D.java.swing
& 答案:A java.swing是图形开发组件的一些包.java.awt包含一些老的图形组件,java.lang是通用的一
些类,被默认包含.java.sql包含操作数据库,获取数据的API
& 5.下列运算符合法的是()
& A.&& B.&& C.if D.:=
&&是SQL中的写法,JAVA用!=
& 6.执行如下程序代码
& a=0;c=0;
& }while(a&0);
& 后,C的值是()
& A.0 B.1 C.-1 D.死循环
& 7.下列哪一种叙述是正确的()
& A. abstract修饰符可修饰字段、方法和类
& B.抽象方法的body部分必须用一对大括号{ }包住
& C.声明抽象方法,大括号可有可无
& D.声明抽象方法不可写出大括号
abstract不能修饰字段,抽象方法不用实现,不能用{}.
& 8.下列语句正确的是()
& A.形式参数可被视为local variable
& B.形式参数可被字段修饰符修饰
& C.形式参数为方法被调用时,真正被传递的参数&& D.形式参数不可以是对象
真正被传递的是实参,形参可以是对象,是对象的时候传递引用.
& 9.下列哪种说法是正确的()
& A.实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法&
& C.实例方法可直接调用其他类的实例方法
& D.实例方法可直接调用本类的类方法
子类是否可以调用父类要看父类相应方法的权限,而无论本类方法的权限如何,都可以调用.
& 二、多项选择题
& 1.Java程序的种类有()
& A.类(Class) B.Applet C.Application D.Servlet
答案:B,C,D
Applet:(小应用程序)采用Java创建的基于HTML的程序。浏览器将其暂时下载到用户的硬
盘上,并在Web页打开时在本地运行。一般的Applet只能通过appletviewer或者浏览器来
运行,一般的Java程序通过继承Applet类也可以嵌入网页运行.
Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程
序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。
& 2.下列说法正确的有()
& A.环境变量可在编译source code时指定
& B.在编译程序时,所能指定的环境变量不包括class path
& C. javac一次可同时编译数个Java源文件
& D. javac.exe能指定编译结果要置于哪个目录(directory)
& 答案:BCD
& 3.下列标识符不合法的有()&& A.new B.$Usdollars C.1234 D.car.taxi
& 答案:ACD
JAVA命名规则:以大小写英文字母、数字、下划线&_&和美元符号&$&组成,且第一位不能为数字.
& 4.下列说法错误的有()
& A.数组是一种对象
& B.数组属于一种原生类
& C. int number=[]={31,23,33,43,35,63}
& D.数组的大小可以任意改变
& 答案:BCD
原生类指未被实例化的类,数组一般指实例化,被分配空间的类,不属于原生类.
& 5.不能用来修饰interface的有()
& A.private B.public C.protected D.static
& 答案:ACD
class可用修饰符有public final abstract(final和abstract不能用时出现),interface可用修
饰符只有public(接口本来就是abstract)
& 6.下列正确的有()
& A. call by value不会改变实际参数的数值
& B. call by reference能改变实际参数的参考地址
& C. call by reference不能改变实际参数的参考地址
& D. call by reference能改变实际参数的内容
& 答案:ACD
数值拷贝不会改变实参内容,引用拷贝可以改变实参内容,但不会改变实参的引用地址.
& 7.下列说法错误的有()
& A.在类方法中可用this来调用本类的类方法
& B.在类方法中调用本类的类方法时可直接调用
& C.在类方法中只能调用本类中的类方法&& D.在类方法中绝对不能调用实例方法
& 答案:ACD
this是对于当前类对象的引用,不能用来调用类方法.类方法不能调用非static方法是就本类方
法的直接调用而言,可以将类实例化后调用.
这题存在漏洞,实际尝试中发现可以用this直接调用类方法,不过会出现编译器警告,从理论上来
说,类方法是类所共有,实例也可访问,但一般都是用类名来显示调用.
public class Main {
public void print()
System.out.println(&print&);
public static void main(String[] args)
Main s=new Main();
s.print();
& 8.下列说法错误的有()
& A. Java面向对象语言容许单独的过程与函数存在
& B. Java面向对象语言容许单独的方法存在
& C. Java语言中的方法属于类中的成员(member)
& D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
& 答案:ABC
这个是文字游戏,没啥意思,让我选我会选AB
& 9.下列说法错误的有()
& A.能被java.exe成功运行的java class文件必须有main()方法
& B. J2SDK就是Java API&& C. Appletviewer.exe可利用jar选项运行.jar文件
& D.能被Appletviewer成功运行的java class文件必须有main()方法
& 答案:BCD
这个不是很懂,只知道Applet只要继承Applet类就行了,不需要main()方法,其他的就不知道
(责任编辑:huang)
------分隔线----------------------------
Java基础教程(程序及语法) /************************************************** 这...
一.算术运算符 +,-,*,/,%,++,-- public class Operator { public static void ...

我要回帖

更多关于 错版人民币错在哪里 的文章

 

随机推荐