您的位置:首页 > 其它

08月28日学习杂记(复习:ANT,集合及零散知识点)

2006-10-04 19:07 477 查看
复习内容:
//定义PROPERTY元素,这样方便变量的使用和修改
<property name="class.dir" value="classes" />
<property name="src.dir" value="src" />

<java classname="cn.itcast.MyClassLoader">
 <classpath>
  <pathelement location="${classes.dir}" />
 </classpath>
 //可以这样直接定义变量,然后用ANT调用的时候直接为这两个参数赋值
 //如:ANT -Dargs(0)=t  -Dargs(1)=tb,这样方便在CMD的时候直接调用,这样赋值 //级别更高一些
 <arg line="${arg0} ${arg1}" />
</java>

二.集合
Enumeration是一个接口,如果打印出一个Enumeration对象,则是Enumertation的实现类

一个集合的类型很多
TREESET是按对象大小来存储的,但一定要实现一个接口---比较大小的或是继承比较大小的接口
TREESET:在向TREESET里加一个对象的时候,首先要进行比较,(不允许存相同的对象)
假设TREESET现在是比身高,哪天要增加比较年龄,只要写一个年龄的比较器即可,不用修改TREESET组合,闭合原则也得以体现.
同一个对象可以往VECTOR中加入多次

HASHSET:
如果对象相等,则HASHCODE值一定相等,如果不是同一个对象,HASHCODE也有要能相等.
HASHCODE可以帮助迅速定位在HASHSET中的位置
(由此引入一个模式----策略模式)

MyFileter implement FileFilter{
 boolean accept(File path){
  //判断文件名是不是以TXT结尾的,或是看是不是目录,两者其一则返回TRUE
  return path.getName().endswith(".txt") || path.isDirectory();
 }
}

Files [] files = dir.listFile(new MyFileter())

原则:
"尽量使用组合,避免使用继承",-------封闭原则

泛型:
public boolean equals(Object obj)
如何通过J2SE5.0中的@Override注释来避免这种问题.

NATIVE2ASCII命令使用:NATIVE2ASCII -ENCODEING 源文件名 目标文件名

大数组将会导致虚拟机OutOfMemoryError;
递归调如果无条件的进行,则会导致堆栈耗尽;

小技巧:
1.递归使用技巧:在函数调用的时候尽量延着函数所要发展的方向去考虑,在函数体中实现本次所要实现的功能.

2.entry:项
Set<Map.Entry<String,Integer>> mes = hm.entrySet();
//Map.Entry<String,Integer> me    不能这样

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息