传智播客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) {   ......
一.下载JDK
1.登录Sun的JDK官方下载网址:http://java.sun.com/javase/downloads/index.jsp
2.下载jdk-1_5_0_07-linux-i586-rpm.bin文件
二.安装JDK
1.增加jdk-1_5_0_07-linux-i586-rpm.bin文件的可执行权限
#root> chmod 755 jdk-1_5_0_07-linux-i586-rpm.bin
2.执行jdk-1_5_0_07-linux-i586-rpm.bin
#ro ......
值类型是存储在内存中的堆栈(以后简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。
==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。
equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否 ......