C.构造方法在调用对象方法时被调用 D.构造方法在使用对象的变量时被调用
答案:B解析:调用构造方法创建对象构造方法的作用是为对象中的属性赋值,在创建对象时,构造方法就会被调用。
8下列关于构造方法定义的描述中,错误的是( )。
A.方法名与类名相同 B.在方法名的前面没有返回值类型的声明C.当定义了有参构造方法,系统默认的无参构造方法依然存在D.在方法中不能使用return语句返回一个值 答案:C
9下列关于构造方法的描述,错误的是( )。
A、一个类中只能定义一个构造方法B、一个类中可以定义多个构造方法C、如果在一个类中定义有参的构造方法,jvm就不会提供默认的无参构造方法D、构造方法的作用是用来给属性进行初始化的 答案:A
10Person p = new Person(“张三”,23);这条语句会调用下列哪个构造方法给属性进行初始化( )
A.public Person(){} B.public Person(String name,int age) { this.name = name; this.age = age; } C.public Person(int age,String name) { this.age = age; this.name = name; } D.public Person(String name) { this.name = name; }
答案:B解析:创建对象时会找到匹配的构造方法给属性进行初始化,由于Person p = new Person(“张三”,23);这条语句中有两个参数,而且第1个参数是String类型的,第2个参数是int类型的,因此会调用B选项中的构造方法。
11在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字? A.inherits B.implements C.extends D.modifies 答案:C 12在类的继承关系中,需要遵循以下哪个继承原则?
A.多重 B.单一 C.双重 D.不能继承 答案:B 13已知类的继承关系如下: class Employee;
class Manager extends Employeer; class Director extends Employee; 则以下语句能通过编译的有哪些?
A.Employee e=new Manager(); B.Director d=new Manager(); C.Director d=new Employee(); D.Manager m=new Director(); 答案:A
14编译运行下面的程序,结果是什么? public class A {
public static void main(String[] args) { B b = new B(); b.test(); }
void test() {
System.out.print(\ } }
class B extends A { void test() { super.test();
System.out.print(\ } }
A.产生编译错误 B.代码可以编译运行,并输出结果AB
C.代码可以编译运行,但没有输出 D.编译没有错误,但会产生运行时异常 答案:B
15public class Example {
public static void main(String[] args) { try{
int rst = 4/0;
System.out.println(\ }catch(Exception e){
System.out.println(\语句块执行\ return; }finally{
System.out.println(\语句块执行\ }
System.out.println(\程序继续向下执行\ } }
运行以上程序,输出的结果是( )
A.catch语句块执行B.catch语句块执行 程序继续向下执行
C.catch语句块执行 finally语句块执行D.0 程序继续向下执行 答案:C解析:在try语句块中发生了除零异常,因此会执行catch语句块中的内容,输出\语句块执行\,finally语句块中表示一定会执行的语句,虽然catch中有return,但依然会输出\语句块执行\
16下面程序运行的结果是( ) class Demo{
public static void main(String[] args){ try{
int x = div(1,2); }catch(Exception e){ System.out.println(e); }
System.out.println(x) }
public static int div(int a,int b){ return a / b ; } }
A.输出1 B.输出0 C.输出0.5 D.编译失败 答案:C 17在try{}catch(______e){}横线处需要填写的是( ) A.异常对象 B.异常类 C.任意对象 D.任意类
答案:B解析:catch代码块需要一个形参指明它所能够接收的异常类型,这个参数的类型
必须是Exception类或其子类
18以下对于try?catch语句描述正确的是( )
A.try?catch语句处理程序中的错误B.try...catch语句处理程序中的bug C.try...catch语句处理程序中的异常D.以上说法都不正确 答案:C解析:try...catch语句处理程序中的异常
19下列选项中,关于final修饰成员变量的说法正确的是?( )
A.被final修饰的成员变量可以被多次赋值B.被final修饰的成员变量为常量 C.final只能在接口中修饰成员变量D.以上都不对
答案:B解析:被final修饰的变量为常量,不能被第二次赋值或改变引用 20下列选项中,不可以被final修饰的是?( ) A.接口 B.类 C.方法 D.变量
答案:A解析:final关键字可用于修饰类、变量和方法 题目难度:★☆☆☆ 容易
21分析下面程序,哪一行代码能正确赋值?() class Demo {
public void method() {
final int num1 = 10; static int num2 = 20; abstract int num3 = 30; private int num4 = 40; } }
A.final int num1 = 10; B.static int num2 = 20; C.abstract int num3 = 30;D.private int num4 = 40; 答案:A解析:final可以修饰局部变量 22下面程序的运行结果是( ) public class Demo {
public static void main(String[] args) { try {
System.out.println(10 / 0);
System.out.println(\除法正常运行\ } catch (ArithmeticException e) {
System.out.println(\除数不能为0\ } } }
A.编译失败B.编译通过,没有结果输出C.输出:除法正常运行D.输出:除数不能为0 答案:D解析:虽然是运行时期异常,但是也可以使用try?catch语句进行处理。一旦进入处理语句就不会再回去执行
23下列选项中,用于解压jar文件的命令是( ) A.jar –c B.jar –x C.jar –v D.jar -f 答案:B解析:参数x用于解压
24下列选项中,可以导入指定包中所有类的是( )
A.package包名; B.package 包名.*; C.import 包名; D.import 包名.*;
答案:D解析:如果有时候需要用到一个包中的许多类,则可以使用“import 包名.*; ”来
导入该包下所有类
25下列关于protected的说法中,正确的是( )
A.protected修饰的方法,只能给子类使用B.protected修饰的类,类中的所有方法只能给子类使用C.如果一个类的成员被protected修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问D.以上都不对
答案:C解析:如果一个类的成员被protected访问控制符修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问
26如果类的成员被( )访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问
A.private B.default C.protected D.public
答案:A解析:如果类的成员被private访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问。类的良好封装就是通过private关键字来实现的 27阅读下列的代码 public class Test {
public static void main(String[] args) { _________________________ _________________________ } }
class Outer {
static class Inner {
public void method () {
System.out.println(\ } } }
下列选项中,填写在空白处可以使程序正常运行的是()
A.Outer o = new Outer(); o.method(); B.Inner I = new Inner(); i.method(); C.Outer.Inner oi = new Outer.Inner(); oi.method(); D.以上答案都不对 答案:C 28阅读下列的程序 public class Test3 {
public static void main(String[] args) { _________________________ _________________________ } }
class Outer {
static class Inner {
public void method () {
System.out.println(\ } } }
下列选项中,可以正确输出method()方法的是( )