1、在中如果声明一个类为,表示什么意思?
答:是最终的意思,可用于定义变量、方法和类但含义不同,声明为的类不能被继承。
2、父类的构造方法是否可以被子类覆盖(重写)?
答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。
3、请讲述和的区别。
答:类所定义的对象是用于存放“长度固定”的字符串。
类所定义的对象是用于存放“长度可变动”的字符串。
4、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢?
答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。
假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。
5、结合视频5(多线程),分析()和()方法的区别。
答:睡眠的意思 : () 方法用来暂时中止执行的线程。
在睡眠后,线程将进入就绪状态。
等待的意思: 如果调用了 () 方法,线程将处于等待状态。
用于在两个或多个线程并发运行时。
6、谈谈你对抽象类和接口的理解。
答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。
他使用来继承。
接口:一个接口允许一个类从几个接口继承而来,程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。
其实现方式是来实现。
7. 的接口和的虚类的相同和不同处。
由于不支持多继承,而有可能某个类或对象要使用分别在几
个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。
与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。
当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是,所有方法默认情况下是.一个类可以实现多个接口。
8. 垃圾回收的优点和原理。
并考虑2种回收机制。
语言中一个显著的特点就是引入了垃圾回收机制,使程序员最头疼的内存管理的问题迎刃而解,它使得程序员在编写程序的时候不再需要考虑内存管理。
由于有个垃圾回收机制,中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。
垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。
垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。
回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。
9.谈谈,,的区别。
-修饰符(关键字)如果一个类被声明为,意味着它不能再派生出新的子类,不能作为父类被继承。
因此一个类不能既被声明为的,又被声明为的。
将变量或方法声明为,可以保证它们在使用中不被改变。
被声明为的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。
被声明为的方法也同样只
能使用,不能重载。
-再异常处理时提供块来执行任何清除操作。
如果抛出一个异常,那么相匹配的子句就会执行,然后控制就会进入块(如果有的话)。
-方法名。
技术允许使用()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。
这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。
它是在类中定义的,因此所有的类都继承了它。
子类覆盖()方法以整理系统资源或者执行其他清理工作。
()方法是在垃圾收集器删除对象之前对这个对象调用的。
10.数组有没有()这个方法?有没有()这个方法?举例说明使用方法?
数组没有()这个方法,有的属性。
有有()这个方法。
11. 中的异常处理机制的简单原理和应用。
当程序违反了的语义规则时,虚拟机就会将发生的错误表示为一个异常。
违反语义规则包括2种情况。
一种是类库内置的语义检查。
例如数组下标越界,会引发;访问的对象时会引发 .另一种情况就是允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用关键字引发异常。
所有的异常都是的子类。
一、单选择题(每小题2分,共10分)
1、编译源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A.
B.
C.
D.
2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。
A. 3
B. 3. 5
C. 4
D. 5
3、在程序用户自定义的子类中,一般需要重载父类的
( D )方法来完成一些画图操作。
A. ( )
B. ( )
C. ( )
D. ( )
4、不允许作为类及类成员的访问控制符的是( C )。
A. B.
C.
D.
5、为类的一个无形式参数无返回值的方法书写方法头,使得使
用类名作为前缀就可以调用它,该方法头的形式为( A )。
A. ( )
B. ( )
C.
( ) D. ( )
二、填空题(每空格1分,共20分)
1、开发与运行程序需要经过的三个主要步骤为、
和。
2、如果一个源程序文件只定义有一个类,该类的类名为,则
类必须是类的子类并且存储该源
程序文件的文件名为。
3、如果一个程序文件中定义有3个类,则使用公司的编译
器编译该源程序文件将产生
个文件名与类名相同而扩展名为的字节
码文件。
4、在的基本数据类型中,型采用编码方案,每个码占
用字节内存空间,这样,无论是中文字符还是英文字符,都是占
用字节内存空间。
5、设 x = 2 ,则表达式 ( x + + )/3 的值是。
6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为和。
7、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
方法是不能被当前类的子类重新定义的方法。
8、创建一个名为的包的语句是,
该语句应该放在程序的位置为:。
9、执行以下几个语句后的输出结果是。
s = “” , s1=””;
5
(i>10)
(s) ;
(s1) ;
10、在程序中,通过类的定义只能实现重继承,但通过接口的定义可以实现重继承关系。
一、单选择题(每小题2分,共10分)
1、B
2、A
3、D
4、C
5、A
二、填空题(每空格1分,共20分)
1、编辑源程序、编译生成字节码、解释运行字节码
2、、
3、、3、 .
4、2 、2
5、0
6、、
7、抽象()方法、最终()方法
8、 ; 应该在程序第一句。
9、
10、单、多。