目录
  • 4、what results from the following code fragment?
  • 6、jdk1.7版本之前,接口和抽象类描述正确的有( )
  • 7、以下关于java语言异常处理描述正确的有?
  • 10、what is static method in java()

    承蒙各位厚爱,我们一起每天进步一点点!(鼠标选中空白处查看答案)

    1、以下程序段的输出结果为:

    public class equalsmethod

    {

    public static void main(string[] args)

    {

    integer n1 = new integer(47);

    integer n2 = new integer(47);

    system.out.print(n1 == n2);

    system.out.print(“,”);

    system.out.println(n1 != n2);

    }

    }

    正确答案: b

    false,false

    false,true

    true,false

    true,true

    题解:
    首先 我们要知道 == 这个比较符号
    ==可用于基本类型和引用类型:当用于基本类型时候,是比较值是否相同;当用于引用类型的时候,是比较对象是否相同。
    “==”和 “!=”比较的是地址 指第一个new()出来的地址
    因为两次new() 出的内存也不同
    所以system.out.print(n1 == n2);返回 false
    所以system.out.println(n1 != n2);就返回true
    所以选b

    2、在java7中,下列不能做switch()的参数类型是?

    正确答案: d

    int型

    枚举类型

    字符串

    浮点型

    题解:
    switch语句后的控制表达式只能是short、char、int整数类型和枚举类型,不能是float,double和boolean类型。string类型是java7开始支持。

    3、以下代码的输出结果是?

    public class b

    {

    public static b t1 = new b();

    public static b t2 = new b();

    {

    system.out.println(“构造块”);

    }

    static

    {

    system.out.println(“静态块”);

    }

    public static void main(string[] args)

    {

    b t = new b();

    }

    }

    正确答案: c

    静态块 构造块 构造块 构造块

    构造块 静态块 构造块 构造块

    构造块 构造块 静态块 构造块

    构造块 构造块 构造块 静态块

    题解:
    开始时jvm加载b.class,对所有的静态成员进行声明,t1 t2被初始化为默认值,为null,又因为t1 t2需要被显式初始化,所以对t1进行显式初始化,初始化代码块→构造函数(没有就是调用默认的构造函数),咦!静态代码块咋不初始化?因为在开始时已经对static部分进行了初始化,虽然只对static变量进行了初始化,但在初始化t1时也不会再执行static块了,因为jvm认为这是第二次加载类b了,所以static会在t1初始化时被忽略掉,所以直接初始化非static部分,也就是构造块部分(输出’‘构造块”)接着构造函数(无输出)。接着对t2进行初始化过程同t1相同(输出’构造块’),此时就对所有的static变量都完成了初始化,接着就执行static块部分(输出’静态块’),接着执行,main方法,同样也,new了对象,调用构造函数输出(‘构造块’),所以选c

    4、what results from the following code fragment?

    (翻译:下面的代码片段产生了什么结果?)

    int i = 5;

    int j = 10;

    system.out.println(i + ~j);

    正确答案: c

    compilation error because”~”doesn’t operate on integers

    -5

    -6

    15

    题解:
    公式-n=n+1可推出n=-n-1,所以~10=-11再加5结果为-6

    5、对于构造方法,下列叙述正确的是( )。

    正确答案: a c d

    构造方法的优先级一般比代码块低。

    构造方法的返回类型只能是void型。

    构造方法的主要作用是完成对类的对象的初始化工作。

    一般在创建新对象时,系统会自动调用构造方法。

    题解:

    a:静态成员变量或静态代码块>main方法>非静态成员变量或非静态代码块>构造方法

    b:think in java中提到构造器本身并没有任何返回值。

    c: 构造方法的主要作用是完成对类的对象的初始化工作。

    d: 一般在创建(new)新对象时,系统会自动调用构造方法。

    6、jdk1.7版本之前,接口和抽象类描述正确的有( )

    正确答案: b c

    抽象类没有构造函数。

    接口没有构造函数。

    抽象类不允许多继承。

    接口中的方法可以有方法体。

    题解:
    a.抽象类可以有构造方法,只是不能直接创建抽象类的实例对象而已
    b.在接口中 不可以有构造方法,在接口里写入构造方法时,编译器提示:interfaces cannot have constructors。
    c.java不允许类多重继承
    d.jdk1.8后接口中的方法可以有方法体,jdk1.8之前不可以有方法体

    7、以下关于java语言异常处理描述正确的有?

    正确答案: c d

    throw关键字可以在方法上声明该方法要抛出的异常。

    throws用于抛出异常对象。

    try是用于检测被包住的语句块是否出现异常,如果有异常,则抛出异常,并执行catch语句。

    finally语句块是不管有没有出现异常都要执行的内容。

    在try块中不可以抛出异常

    题解:
    java语言中的异常处理包括声明异常、抛出异常、捕获异常和处理异常四个环节。
    throw用于抛出异常。
    throws关键字可以在方法上声明该方法要抛出的异常,然后在方法内部通过throw抛出异常对象。
    try是用于检测被包住的语句块是否出现异常,如果有异常,则抛出异常,并执行catch语句。
    cacth用于捕获从try中抛出的异常并作出处理。
    finally语句块是不管有没有出现异常都要执行的内容。

    8、下面程序输出结果为():

    public class demo{

    public static void main (string [] args) {

    string lx = “lexin”;

    string nb = lx;

    lx = “fenqile”;

    system.out.println(nb);

    }

    }

    正确答案: b c

    程序异常,编译不通过

    程序编写正常,可正常运行

    程序输出值为“lexin”

    程序输出值为“fenqile”

    题解:
    很显然是把“lexin”的值赋给了nb

    9、java中关于继承的描述正确的是()

    正确答案: a c d

    一个子类只能继承一个父类

    子类可以继承父类的构造方法

    继承具有传递性

    父类一般具有通用性,子类更具体

    题解:
    子类不可以继承父类的构造方法,只可以调用父类的构造方法。子类中所有的构造函数都会默认访问父类中的空参数构造函数,这是因为子类的构造函数内第一行都有默认的super()语句。

    10、what is static method in java()

    正确答案: a b c

    it is a method which belongs to the class and not to the object(instance)

    a static method can access only static data. it can not access non-static data (instance variables)

    a static method can call only other static methods and can not call a non-static method from it.

    a static method can not be accessed directly by the class name and doesn’t need any object

    题解:
    a:静态方法是一个属于类而不属于对象(实例)的方法。(√)
    b:静态方法只能访问静态数据。无法访问非静态数据(实例变量)。(√)
    c:静态方法只能调用其他静态方法,不能从中调用非静态方法。(√)
    d:静态方法不能通过类名直接访问,也不需要任何对象。(×) 静态方法可以直接用类名访问。

    答案汇总:

    1、正确答案: b

    2、正确答案: d

    3、正确答案: c

    4、正确答案: c

    5、正确答案: a c d

    6、正确答案: b c

    7、正确答案: c d

    8、正确答案: b c

    9、正确答案: a c d

    10、正确答案:a b c

    总结

    本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注www.887551.com的更多内容!