学生复习java试卷答案_Java期末复习题答案详解

14、是否可以继承String类?

答:String类是final类故不可以继承。

15、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

答:switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。

16、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?

答:会执行,在return前执行。

17、简述Java多态性的概念,隐藏、覆盖和重载的概念及使用时应注意的问题。

答:多态性:在一个类中可以定义多个同名方法,有静态多态性和动态多态性。

隐藏:子类重新定义了父类中的同名成员变量。被隐藏的父类成员变量在子类中仍然占有存储空间。

覆盖:子类重新定义了父类的同名成员方法,要求方法名、参数和返回类型都相同。与隐藏不同,此时子类方法将替换掉同名的父类方法,清除父类方法在子类中占有的空间。

重载:在同一个类中定义多个同名但参数不同的方法,参数不同是指个数、类型或顺序不同。注意事项:

不能覆盖父类的static方法和final方法。

可以隐藏父类的static方法,即在子类中声明同名static方法。

非Static方法不能隐藏,只能覆盖。

子类必须覆盖父类的abstract方法。

18、什么是事件、事件源和事件监听器?简述使用事件监听器进行事件处理的过程。

答:事件:对界面的某种操作,如按键、单击鼠标、鼠标移动等。

事件源:事件的产生者,通常是某一组件,如按钮等。

事件监听器:是某些事件的接口,其中定义了被监听的事件发生时系统要调用的方法。

事件处理过程由下面3步组成:

①为类声明需要的事件监听器接口。

②给事件源注册一个事件监听器。

③实现接口声明中事件处理方法。

19、简述Java中构造方法的概念及特点。

答:构造方法:构造方法是一种特殊的方法,用于初始化对象。

特点:①构造方法与类同名,可以有参数,也可无参数。

②构造方法没有返回值,在方法前也不需要写void。

③创建对象时,系统自动调用构造方法。

④用户在程序中不能直接调用构造方法,只能通过new操作符调用。

⑤一个类可以有多个同名构造方法,但参数必须不同。所谓参数不同是指:

⑥类中可以不定义构造方法,此时Java提供一个默认的无参数构造方法

20、简述Java中接口的概念及接口的性质?

答:Java语言规定,类只能实现单继承,但接口可以实现多重继承。接口中定义的方法都是抽象方法,定义的所有域都是常量。

因此接口可以看作是没有实现的方法和常量的集合。使用接口主要是解决Java语言不支持多重继承的问题。

性质:①接口不提供代码重用性。因为接口中的方法都是没有实现的方法,因此所有的方法体都要自己编写。

②接口可以通过多继承进行扩展。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
大学java期末复习,试题及答案 1、编译Java Application程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A.java B..class C.html D..exe 2、下面哪一项字符序列可以作为合法的标识符( )。 A.true B.null C.2018_year D.$2018year 3、下列选项中,( )不属于Java语言的简单数据类型。 A.整数型 B.数组 C.字符型 D.浮点型 4、对于int a[ ]=new int[3],下列叙述错误的是( )。 A. a.length的值是3 B. a[1]的值是1 C. a[0]的值是0 D. a[a.length-1]的值等于a[2]的值 5、用下列哪个代码替换程序标注的【代码】会导致编译错误? A.m-->0 B.m++>0 C.m = 0 D.m>100&&true; public class E { public static void main (String args[ ]) { int m=10,n=0; while(【代码】) { n++; } } } 6、以下关于继承的叙述正确的是( )。 A. 在Java中类不能多继承 B. 在Java中一个类只能实现一个接口 C. 在Java中一个类不能同时继承一个类和实现一个接口 D. 在Java中接口只能单一继承 7、对于下列Cat类,哪个叙述是错误的?( ) A.Cat类只有 2 个构造方法,而且没有无参数的构造方法 B.Cat类有 4 个构造方法 C.Cat (int m)和 Cat (double m)是互为重载的构造方法 D.int Cat (int m)和 void Cat (double m) 是互为重载的非构造方法 class Cat { Cat (int m){ } Cat (double m){ } int Cat (int m){ return 23; } void Cat (double m){ }} 8、下列叙述哪些是正确的( )。 A final 类可以有子类 B abstract类中只能有abstract方法 C abstract类中可以有非abstract方法,但该方法不可以用final修饰 D 不可以同时用final和abstract修饰一个方法 9、假设D类有如下定义,设d是D类的一个实例对象,下列语句调用错误的是 ( )。 class D{ int i; static String s; void method1(){} static void method2(){}} A.d.method1(); B.D.method2(); C.D.method1(); D.System.out.println(d.i); 10、将下列( )哪个代码替换下列程序中的【代码】不会导致编译错误。 A.public int f(){return 100+M;} B.int f(){return 100;} C.public double f(){return 2.6;}。 D.public abstract int f();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值