Java 5.0 泛型之 Java泛型接口
package Demo;
// Java泛型接口
interface Info24<T> { // 在接口上定义泛型
public T getVar(); // 定义抽象方法,抽象方法的返回值就是泛型类型
}
class InfoImp24<T> implements Info24<T> { // 定义泛型接口的子类
private T var; // 定义属性
public InfoImp24(T var) { // 通过构造方法设置属性内容
this.setVar(var);
}
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
}
public class GenericsDemo24 {
public static void main(String arsg[]) {
Info24<String> i = null; // 声明接口对象
i = new InfoImp24<String>("it"); // 通过子类实例化对象
System.out.println("Length Of String : " + i.getVar().length());
}
}
package Demo;
// Java泛型接口
interface Info25<T> { // 在接口上定义泛型
public T getVar(); // 定义抽象方法,抽象方法的返回值就是泛型类型
}
class InfoImp25 implements Info25<String> { // 定义泛型接口的子类
private String var; // 定义属性
public InfoImp25(String var) { // 通过构造方法设置属性内容
this.setVar(var);
}
public void setVar(String var) {
this.var = var;
}
public String getVar() {
return this.var;
}
}
public class GenericsDemo25 {
// 该批注的作用是给编译器一条指令,告诉它对被批注的代码元素内部的某些警告保持静默。
/*
* @description "deprecation" 使用了不赞成使用的类或方法时的警告
*
* @description "unchecked" 执行了未检查的转换时的警告,例如当使用集合时没有用泛型 (Generics)
* 来指定集合保存的类型。
*
* @description "fallthrough" 当 Switch 程序块直接通往下一种情况而没有 Break 时的警告。
*
* @description "path" 在类路径、源文件路径等中有不存在的路径时的警告。
*
* @description "serial" 当在可序列化的类上缺少 serialVersionUID 定义时的警告。
*
* @description "finally" 任何 finally 子句不能正常完成时的警告。
*
* @description "all" 关于以上所有情况的警告。
*/
@SuppressWarnings("unchecked")
public static void main(String arsg[]) {
Info25 i = null; // 声明接口对象
i = new
相关文档:
一:准备 www.savarese.org download
1. rocksaw-1.0.0-src.tar.gz
2. vserv-tcpip-0.9.2-src.tar.gz
二:编译源文件得到jar包 使用Ant
1. build vserv-tcpip-0.9.2-src
在vserv-tcpip-0.9.2目录下面建一个tests目录,然后在cmd窗口下进入 ......
最近在做接口的时候总是遇到一个for语句中 每次循环会涉及很多资源,包括 ftp io db,总想用现场来控制太.找到一篇文章 http://daoger.javaeye.com/blog/142485 写的不错.自己写了2个demo
1. 主线程不等待
public class CopyOfTestThreadPool {
public static void main(String args[]) thr ......
package Demo;
// Java泛型数组
public class GenericsDemo30 {
public static void main(String args[]) {
Integer i[] = fun1(1, 2, 3, 4, 5, 6); // 返回泛型数组
fun2(i);
}
public static <T> T[] fun1(T... arg) { // 接收可变参数
return arg; // 返回泛型数组
}
public static <T> ......
package Demo;
// Java泛型的嵌套设置
class Info31<T, V> { // 接收两个泛型类型
private T key;
private V value;
public Info31(T key, V value) {
this.setKey(key);
this.setValue(value);
}
public void setKey(T key) {
this.key = key;
}
public void setValue(V value) {
this. ......