Java泛型_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java泛型

Java泛型

 2011/12/13 9:16:36  yangyangmyself  http://yangyangmyself.iteye.com  我要评论(0)
  • 摘要:Java泛型是JDK1.5中添加的支持的,所以在JDK1.5之前的版本是没有些功能。泛型就是在对象建立时不指明类中属性的具体类型,而是由外部在声明及实例化对象时指定类型。泛型可以解决数据类型安全性问题。一、泛型基本应用泛弄定义:【访问权限】class类名称<泛型类型标识1,泛型类型标识2..>{【访问权限】泛型类型标识符变量名称;【访问权限】泛型类型标识符方法名称(){};【访问权限】返回值类型声明方法名称(泛型类型标识符变量名称){};}类名称<具体类>
  • 标签:Java 泛型
     Java泛型是JDK1.5中添加的支持的,所以在JDK1.5之前的版本是没有些功能。泛型就是在对象建立时不指明类中属性的具体类型,而是由外部在声明及实例化对象时指定类型。泛型可以解决数据类型安全性问题。


一、泛型基本应用

    泛弄定义:

   
访问权限】 class 类名称<泛型类型标识1,泛型类型标识2..>{
     
        【访问权限】 泛型类型标识符 变量名称;
        
        【访问权限】 泛型类型标识符 方法名称(){  };
   
        【访问权限】返回值类型声明 方法名称(泛型类型标识符 变量名称){  };

     }

     类名称<具体类> 对象名称 = new 类型名称<具体类>();
    


    
      class Point<T>{
        
        private T name ;

        public T getName(){
          
           return this.name;
        }
        public void setName(T name){

           this.name = name;
        }

      }
       public class Test1{

         public static void main(String args[]){
            Point<Integer> p = new Point<Integer>();
            p.setName(24);
            System.out.println(p.getName()); //输出 24
         }

      }

       public class Test2{

         public static void main(String args[]){
            Point<String> p = new Point<String>();
            p.setName("ITeye");
            System.out.println(p.getName()); //输出"ITeye"
         }       
      }

     

     引用泛型类中具体类,不能指定其基本数据类型,必须设置成类,加入泛型避免了类转化异常(ClassCastException)的发生,这样使程序的操作更加安全。


      构造方法应用泛型

      
       【访问权限】 构造方法(<泛型类型标识符> 变量名称){  } ;
      


      指定多个泛型类型

      

       class Point<K,v>{
        
         private K key ;
 
         private V value ;

         public K getKey(){
 
            return this.key ;
         }
         public void SetKey(K key){

            this.key = key ;
         }
         public V getValue(){

            return this.value ;
         }
         public void setValue(V value){

            this.value = value ;
         }
   
       };
       public class Test{
        
         public static void main(String args){
               
             Point<String,Integer> p = new Point<String,Integer>();
             p.setKey("ITeye") ;
             p.setValue(40) ;
             System.out.println(p.getKey()+"--"+p.getValue());
         }
       } 
      


      引用
       在实例化对象时,如不指定类型,这样使用此类时,就会在编译时出现不安全的警告信息,但是并不会影响程序的运行。如没有指定类型,则统一使用Object进行接收。
     
    




发表评论
用户名: 匿名