Java 5.0 ·ºÐÍÖ® Java·ºÐÍÎÞ·¨ÏòÉÏתÐÍ
package Demo;
// Java·ºÐÍÎÞ·¨ÏòÉÏתÐÍ
class Info23<T> {
private T var; // ¶¨Òå·ºÐͱäÁ¿
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
public String toString() { // Ö±½Ó´òÓ¡
return this.var.toString();
}
}
public class GenericsDemo23 {
// ¸ÃÅú×¢µÄ×÷ÓÃÊǸø±àÒëÆ÷Ò»ÌõÖ¸Á¸æËßËü¶Ô±»Åú×¢µÄ´úÂëÔªËØÄÚ²¿µÄijЩ¾¯¸æ±£³Ö¾²Ä¬¡£
/*
* @description "deprecation" ʹÓÃÁ˲»ÔÞ³ÉʹÓõÄÀà»ò·½·¨Ê±µÄ¾¯¸æ
*
* @description "unchecked" Ö´ÐÐÁËδ¼ì²éµÄת»»Ê±µÄ¾¯¸æ£¬ÀýÈ統ʹÓü¯ºÏʱûÓÐÓ÷ºÐÍ (Generics)
* À´Ö¸¶¨¼¯ºÏ±£´æµÄÀàÐÍ¡£
*
* @description "fallthrough" µ± Switch ³ÌÐò¿éÖ±½ÓͨÍùÏÂÒ»ÖÖÇé¿ö¶øÃ»ÓÐ Break ʱµÄ¾¯¸æ¡£
*
* @description "path" ÔÚÀà·¾¶¡¢Ô´Îļþ·¾¶µÈÖÐÓв»´æÔڵķ¾¶Ê±µÄ¾¯¸æ¡£
*
* @description "serial" µ±ÔÚ¿ÉÐòÁл¯µÄÀàÉÏȱÉÙ serialVersionUID ¶¨ÒåʱµÄ¾¯¸æ¡£
*
* @description "finally" ÈκΠfinally ×Ӿ䲻ÄÜÕý³£Íê³ÉʱµÄ¾¯¸æ¡£
*
* @description "all" ¹ØÓÚÒÔÉÏËùÓÐÇé¿öµÄ¾¯¸æ¡£
*/
@SuppressWarnings("all")
public static void main(String args[]) {
Info23<String> i1 = new Info23<String>(); // ·ºÐÍÀàÐÍΪString
Info23<Object> i2 = null;
// i2 = i1; // Õâ¾ä»á³ö´í incompatible types
}
}
Ïà¹ØÎĵµ£º
ÔÚ½ñÄê11Ô·ݣ¬ºêÌìÈí¼þ¿ª·ÅÁ˹«Ë¾µÄ¿ªÔ´°æOA 1.2
beta°æ±¾£¬µÃµ½Í¬ÐÐÒÔ¼°ÆóÒµµÄÈÈÁÒÏìÓ¦£¬¹«Ë¾Ò²¼Ó½ôÁËÏÂÒ»²½µÄ¿ªÔ´µÄ²½·¥£¬ºêÌìÈí¼þ°ÑÏÖÐÐµÄÆóÒµ°æ1.2.1Ò²¶ÔËùÓÐÆóÒµ¿ª·ÅÔ´´úÂ루ÔÝʱ²»¶Ô¸öÈË¿ª
·Å£¬ËäȻĿǰÓкܶà¸öÈ˼°Èí¼þ¿ª·¢ÊÒÇ¿ÁÒÒªÇ󣩣¬ÆóÒµÖ»ÐèÒª»¨ÉÏÍòÔª×óÓÒ£¬¾Í¿ÉÒÔ¹ºÂò¸Ã°æ±¾µÄÈ«²¿´úÂ룬²¢»ñµÃÊÚȨ»ùÓÚ´ËÏ ......
¡¡¡¡¶ÔÓÚÕâ¸öϵÁÐÀïµÄÎÊÌ⣬ÿ¸öѧJavaµÄÈ˶¼Ó¦¸Ã¸ã¶®¡£µ±È»£¬Èç¹ûÖ»ÊÇѧJavaÍæÍæ¾ÍÎÞËùνÁË¡£Èç¹ûÄãÈÏΪ×Ô¼ºÒѾ³¬Ô½³õѧÕßÁË£¬È´²»ºÜ¶®ÕâЩÎÊÌ⣬Ç뽫Äã×Ô¼ºÖعé³õѧÕßÐÐÁС£ÄÚÈݾùÀ´×ÔÓÚCSDNµÄ¾µäÀÏÌù¡£
¡¡¡¡ÎÊÌâÒ»£ºÎÒÉùÃ÷ÁËʲô£¡
String s = "Hello world!";
¡¡¡¡Ðí¶àÈ˶¼×ö¹ýÕâÑùµÄÊÂÇ飬µ«ÊÇ ......
package Demo;
// ÊÜÏÞ·ºÐÍ
class Info17<T> {
private T var; // ¶¨Òå·ºÐͱäÁ¿
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
public String toString() { // Ö±½Ó´òÓ¡
return this.var.toString();
}
}
public class GenericsDemo17 {
publ ......
ͨ¹ýJava·´Éäµ÷Ó÷½·¨
ÕâÊǸö²âÊÔÓõÄÀý×Ó£¬Í¨¹ý·´Éäµ÷ÓöÔÏóµÄ·½·¨¡£
TestRef.java
import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;
/**
* Created by IntelliJ IDEA.
* File: TestRef.java
* User: leizhimin
* Date: 2008-1-28 14:48:44 ......
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> ......