黑马程序员技术交流社区
标题:
【分享】经典面试题(2)
[打印本页]
作者:
陈兆辉
时间:
2014-9-25 00:14
标题:
【分享】经典面试题(2)
1. 在Java中一个类被声明为final类型,表示了什么意思?
答:表示该类不能被继承,意味着它不能再派生出新的子类,不能作为父类被继承,是顶级类。
2. short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
答:两个错误都是一样的,后者只是加法的写法不一样,两个错误都是因为s1是short型而1是整型相加后数据类型就变为整型了,与s1定义为short型有矛盾,必须进行强制类型转换才正确。
3. 题目如下:
//父类:
public class FatherClass
{
public FatherClass()
{
System.out.println(“FatherClass Create“);
}
}
//子类:
public class ChildClass extends FatherClass
{
public ChildClass()
{
System.out.println(“ChildClass Create“);
}
public static void main(String[] args)
{
FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass();
}
}
//请问输出结果为:
复制代码
FatherClass Create+
FatherClass Create
ChildClass Create
5.. Collection框架中实现比较要实现什么接口?
答:要实现Comparable接口,并实现这个接口的唯一方法cpmparaTo(),接受一个Object对象,在这个方法中可以定义对象的排序规则。
6. 介绍Java中的Collection 框架结构 , 并画出来。
答案在附件。
7. 谈谈final, finally的区别。
答:final是修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract,又被声明为final。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。
Finally是在异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话),只要有finally语句块,无论程序如何运行,它都必然被执行到。
8. 多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
答:多线程有三种实现方法,分别为:
① 实现Runnable接口,覆盖Run()方法。
② 继承Thread,覆盖Run()方法。
③ 继承TimerTask,覆盖Run()方法。
集合框架.jpg
(149.63 KB, 下载次数: 26)
下载附件
2014-9-25 00:11 上传
作者:
heshengnan
时间:
2014-9-25 10:08
感谢分享
作者:
darkads
时间:
2014-9-25 10:48
谢谢分享
作者:
刘宣超
时间:
2014-9-25 10:56
多些分享。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2