码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础学习——泛型

时间:2017-09-04 09:45:19      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:gen   code   自定义格式   个数   ret   ack   over   函数   generate   

一、泛型方法

 1 /**
 2 
 3 自定义泛型:自定义泛型可以理解为是一个数据类型的占位符,或者理解为是一个数据类型的变量。
 4 
 5 泛型方法:
 6 泛型方法的自定义格式:修饰符<声明自定义泛型>返回值类型    函数名称(形参列表)
 7 在自定义泛型方法上泛型的具体类型是调用该方法的时候传入参数的类型所确定的
 8 
 9  */
10 public class demo1 {
11     public <T>T printf (T t){
12         return t;
13     }
14     public static void main(String[] args) {
15         demo1 demo1 = new demo1();
16         Integer integer = demo1.printf(100);
17         String string = demo1.printf("wz");
18         System.out.println(string);
19         System.out.println(integer);
20     }
21 }

二、泛型类

 1 package cn.itcast.generic;
 2 /**
 3  * 在类上自定义泛型 如果创建该类的对象时, 没有指定泛型的具体类型 那么默认的是object类型
 4  * 在类上自定义的泛型 具体的数据类型是在创建对象的时候指定的
 5  * 
 6  */
 7 public class demo2 {
 8     public static void main(String[] args) {
 9         MyList<String > myList = new MyList();
10         myList.add("add");
11 //        myList.add(123);
12     }
13 }
14 
15 class MyList<T>{
16     //创建对象的时候不能直接用泛型直接创建
17     //T[] arr = new T[10];
18     Object[] arr = new Object[10];
19     int index = 0;
20     public MyList() {
21         
22     }
23     public void add(T oT){
24         arr[index++] = oT;
25         
26     }
27 }

 三、泛型接口

 1 /**
 2 
 3 泛型接口:
 4 
 5 泛型接口的定义格式:interface 接口名 <声明自定义的泛型>{}
 6 在接口上自定义泛型注意事项:
 7 1 在接口上自定义泛型 具体的数据类型是 在实现接口的时候 指定的。
 8 2 如果接口自定义了泛型 在实现该接口的时候没有指定数据类型 那么该接口默认 是object类型
 9 
10  如果
11  */
12 
13 interface GenericDao<T>{
14     public void add(T t);
15     
16     public void remove(T t);
17 }
18 
19 public class demo3 implements GenericDao<String >{
20 
21     @Override
22     public void add(String t) {
23         // TODO Auto-generated method stub
24         
25     }
26 
27     @Override
28     public void remove(String t) {
29         // TODO Auto-generated method stub
30         
31     }
32 }
33 class demo4 implements GenericDao{
34 
35     @Override
36     public void add(Object t) {
37         // TODO Auto-generated method stub
38     }
39 
40     @Override
41     public void remove(Object t) {
42         // TODO Auto-generated method stub
43     }
44 }

 三、泛型接口

 1 /**
 2 
 3 泛型接口:
 4 
 5 泛型接口的定义格式:interface 接口名 <声明自定义的泛型>{}
 6 在接口上自定义泛型注意事项:
 7 1 在接口上自定义泛型 具体的数据类型是 在实现接口的时候 指定的。
 8 2 如果接口自定义了泛型 在实现该接口的时候没有指定数据类型 那么该接口默认 是object类型
 9 
10  如果
11  */
12 
13 interface GenericDao<T>{
14     public void add(T t);
15     
16     public void remove(T t);
17 }
18 
19 public class demo3 implements GenericDao<String >{
20 
21     @Override
22     public void add(String t) {
23         // TODO Auto-generated method stub
24         
25     }
26 
27     @Override
28     public void remove(String t) {
29         // TODO Auto-generated method stub
30         
31     }
32 }
33 class demo4 implements GenericDao{
34 
35     @Override
36     public void add(Object t) {
37         // TODO Auto-generated method stub
38     }
39 
40     @Override
41     public void remove(Object t) {
42         // TODO Auto-generated method stub
43     }
44 }

 

Java基础学习——泛型

标签:gen   code   自定义格式   个数   ret   ack   over   函数   generate   

原文地址:http://www.cnblogs.com/wy0904/p/7466977.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!