java.lang的重要类的复习,反射机制和线程
java.lang包是Java 的基础包, 在编译时,java.lang 包被自动导入源文件。java.lang包含Object类和包装类(Boolean、Character、Byte、Short、Integer、Long、Float和Double)等。其中重点类有:Class、ClassLoader、Enum、Math、String、StringBuffer还有一个重点的Thread类。
现就以api为导向,重点介绍一下这几个类的应用。
先给出几道面试题作为引子:
1.Object类中的hascode() 方法的返回类型是什么?
这个很简单:int
2.Object 类的clone() 方法可以抛出什么异常?
A. CloneNotSupportedException
B. NotCloneableException
C. IllegalCloneException
D. NoClonesAllowedException.
答案:A
3. 下面程序代码哪些部分能够打印出11?
JAVA代码:
- /** * @author ec06cumt
- */ public class TestLangMath {
- public static void main(String[] args) { double v = 10.5;
- System.out.println(Math.ceil(v)); System.out.println(Math.round(v));
- System.out.println(Math.floor(v)); System.out.println((int)Math.ceil(v));
- System.out.println((int)Math.floor(v)); }
- }
4. 下面哪些运算符不能用于合并字符串对象?
a. +
b. -
c. +=
d. .
e. &
答案: b、 e
5. 下面的哪些表达式是非法的?
a. "hel".concat("lo");
b. ("hel"+"lo");
c. ('h'+'e'+'l'+'l'+'o');
d. ("hel"+ new String('l'+'o'));
e. ("hel") + new String("lo");
答案: b、c、d
6. 编译并运行下面的程序,结果是什么?
public class TestLangStringBuffer{
public static void mian(String[] args){
String s="Java 你好";
System.out.println(s.length):
}
}
请选择正确的答案: a. 9
b. 7
c. 11
d. 编译错误
答案: d 因为s.length();
注:String与StringBuffer的区别
String类提供了数值不可变的字符串,String类的对象一旦创建后,它的所有属性都是final类型的,也就是说一旦创建后,就不能修改。StringBuffer则是可变的。这是两者最大的区别。
- 最新评论