传智播客java学习 基础加强 泛型
今天我听了佟刚老师讲的基础加强课程,我对此做了简单的记录:
佟老师讲了以下知识点
1. 枚举:
1). 在枚举类中显式列出枚举类的所有实例必须放在第一行!
2. 没有泛型的缺点:
1). 从集合中获取对象时可能需要进行类型转换
2). 还可能产生一个运行时错误: java.lang.ClassCastException
3. 泛型的核心思想: 把一个list(集合) 中的内容限制为一个特定的数据类型
4. 面试问题:
下面的代码片断合法么?
List<String> ls = new ArrayList<String>(); //1 -- ok
List<Object> lo = ls; //2 // -- false!!
答案:
假设第二行合法, 则:
lo.add(new Object()); // 3
String s = ls.get(0); // 4: 试图把Object赋值给String
这里,我们使用lo指向ls.
通过lo来访问ls -- 一个String的list
可以插入任意对象进去. 结果是 ls 中保存的不再是String
&nb
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
try{
URL url=new URL("http://baidu.com");
BufferedReader br=new BufferedReader(new InputStreamReader(url.openStream()));
String s="";
StringBuffer sb=new StringBuffer("");
while((s=br.readLine())!=null) {   ......
在n×n格的棋盘上放置彼此不受攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。
回溯算法描述:
void Queue(int n)
{
&nb ......
今天我学习了张老师讲的集合类视频;做了一些简单的记录
集合类:在面向对象的编程思想中,都是以对象的形式对事物进行描述的,为了保证在对象的生命周期,我们需要持有对象,在很多情况下,我们不知道在程序中需要创建多少个对象,这时就不能依靠定义引用对象的变量来持有每一个对象,
......