内容发布更新时间 : 2024/11/6 5:20:25星期一 下面是文章的全部内容请认真阅读。
技术改变世界 创新驱动发展
北润JAVA考核-面向对象
第一部分 英语测试(每题分,共分) 第二部分 知识点测试(分) 一、选择题(每题2分,共110分)
1.下面关于变量及其作用范围的陈述哪个是不对的?( B ) A.实例变量是类的成员变量。
B.实例变量用关键字static声明。
C.在方法中定义的局部变量在该方法被执行时创建。 D.局部变量在使用前必须被初始化。
2.下面哪条语句把方法声明为抽象的公共方法?( B )
A.public abstract method();
B.public abstract void method(); D.public void method() extends abstract;
C.public abstract void method(){}
3.若在某一个类定义中定义有如下的方法:final void aFinalFunction( ){}则该方法属于( C )。
A、本地方法 B、静态方法
C、最终方法 D、抽象方法
4.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )。
A、 public static void main()
C、 public static int main(String[ ] args)
B、 public static void main(String[ ] args) D、public void main(String arg[ ])
5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C )。 A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.下列关于构造方法的叙述中,错误的是( C ) A.Java语言规定构造方法名与类名必须相同
B.Java语言规定构造方法没有返回值,但不用void声明 C.Java语言规定构造方法不可以重载
D.Java语言规定构造方法只能通过new自动调用
您的未来就是我们的未来
技术改变世界 创新驱动发展
7.关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C )
A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B.可以被两种类访问和引用:该类本身、该类的所有子类 C.只能被该类自身所访问和修改 D.只能被同一个包中的类访问 8.类Test1定义如下:
1. public class Test1{
2. public floataMethod(float a, float b){} 3. 4.}
将以下哪种方法插入行3是不合法的。( B )
A、public float aMethod(float a,floatb,float c){ } B、public float aMethod(float c,floatd){ } C、public int aMethod(int a,intb){ } D、private float aMethod(inta,intb,intc){ } 9.阅读以下代码: public class foo{
public static void main (String[] args){
String s;
System.out.println(\ } }
输出结果应该是:( C ) A.代码得到编译,并输出“s=” B.代码得到编译,并输出“s=null”
C.由于String s没有初始化,代码不能编译通过 D.代码得到编译,但捕获NullPointException异常
解析:局部变量必须显示的初始化。引用类型变量初始化时如果没有具体对象引用,可
您的未来就是我们的未来
技术改变世界 创新驱动发展
以初始化为null。
10.下述概念中不属于面向对象这种编程范畴的是( D )。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用
11.编译并运行以下程序,以下描述哪个选项是正确的( A )。
1. class A{
2. protected String toString(){ 3. 4. }
A、行2出错,不能成功编译 C、编译通过运行无异常
B、编译通过但运行时出错
return super.toString();}
D、不能成功编译,行3出错
解析:方法重写时没有满足访问权限控制符要比父类的大或者相同。
12.假设Foo类有如下定义,设f是Foo类的一个实例,下列语句调用哪个是错误的?( A )
public class Foo {
int i; }
A、Foo.imethod();
B、f.imethod();
C、System.out.println(f.i); D、Foo.smethod()
static String s; void imethod() { } static voidsmethod() { }
13.以下哪个接口的定义是正确的?( D )
A、interface A
{ void print() { } ;} B、abstract interface A
{ void print() ;}
C、abstract interface A extends I1, I2 //I1、I2为已定义的接口 { abstract void print(){ };} D、interface A
您的未来就是我们的未来
技术改变世界 创新驱动发展
{ void print();}
解析:接口定义时语法规定上是不需要加abstract的,因为接口本身就是abstract的,java编译器在编译接口时会自动加上abstract。但是我们显示的加上abstract是不会出现问题,不建议加。此处选项B和C可以认为不正确。 14.关于以下程序段,正确的说法是( 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不执行 D.行4、行6都不执行 15.下面程序运行结果为:( D,如果输出count则为A)
public class test3{
public static void main(String args[]){
int count=0;
for (int i=0;i<=100;i++) count+=count++; } }
A 0 B 7 C 编译有错误 D 其他答案 16.下面哪个函数是public void aMethod(){...}的重载函数?( D ) A、void aMethod( ){...} B、public int aMethod(){...} C、public void aMethod ( ){...} D、public int aMethod ( int m){...} 17.下面关于继承的哪些叙述是正确的?( D )
您的未来就是我们的未来
技术改变世界 创新驱动发展
A.在java中允许多继承。
B. 在java中一个类只能实现一个接口。
C. 在java中一个类不能同时继承一个类和实现一个接口。 D. java的单一继承使代码更可靠。 18.运行下面程序段的结果是:( D )。
public class MyMain{
public static void main(String args){ System.out.println(“Hello Java”); } }
A.正常输出Hello Java B.编译时出错 C.运行时出错 D. 以上答案都不对 19.类与对象的关系是( A )。 A.类是对象的抽象 C.对象是类的抽象
B.类是对象的具体实例 D.对象是类的子类
20.下列关于修饰符混用的说法,错误的是( BD )。 A. abstract不能与final并列修饰同一个类 B. abstract类中不可以有private的成员 C. abstract方法必须在abstract类中 D. static方法中能处理非static的属性
解析:abstract类中可以有private的成员,只是它的private成员不能被继承,所以在abstract类中定义private成员没有意义。
21.编译并运行下述程序段的结果是:( B )。 public class Test{
public static void main(String argv[]){ int[] count = new int[4]; System.out.println(count[4]);
您的未来就是我们的未来