《java入门第一季》之泛型方法和泛型接口
2016-05-29 18:44
267 查看
一、泛型方法。
定义ObjectTool类
定义ObjectToolDemo类
二、泛型接口。
/*
* 泛型接口:把泛型定义在接口上
* 格式:public interface 接口名<泛型类型1…>
*/
首先定义一个泛型类:
接着分两种格式:
1、已知泛型是什么类型。
InnerDemo类:
定义接口实现自Inter
2、不知道是什么类型。
InnerDemo类:
定义接口实现自Inter
/* * 泛型方法:把泛型定义在方法上。格式:public <泛型类型> 返回类型 方法名(泛型类型 t) public <T> void show(T t){} */
定义ObjectTool类
package cn.itcast_05; public class ObjectTool { public <T> void show(T t) { System.out.println(t); } }
定义ObjectToolDemo类
public class ObjectToolDemo { public static void main(String[] args) { // 定义泛型方法后 ObjectTool ot = new ObjectTool(); ot.show("hello"); ot.show(100); ot.show(true); } }
二、泛型接口。
/*
* 泛型接口:把泛型定义在接口上
* 格式:public interface 接口名<泛型类型1…>
*/
首先定义一个泛型类:
public interface Inter<T> { public abstract void show(T t); }
接着分两种格式:
1、已知泛型是什么类型。
InnerDemo类:
public class InterDemo { public static void main(String[] args) { // 第一种情况的测试 Inter<String> i = new InterImpl(); i.show("hello"); } }
定义接口实现自Inter
public class InterImpl implements Inter<String> { @Override public void show(String t) { System.out.println(t); } }
2、不知道是什么类型。
InnerDemo类:
public class InterDemo { public static void main(String[] args) { // // 第二种情况的测试。注意这里创建实例写法和上边不一样 Inter<String> i = new InterImpl<String>(); i.show("hello"); Inter<Integer> ii = new InterImpl<Integer>(); ii.show(100); } }
定义接口实现自Inter
//第二种情况:还不知道是什么类型的,在创建对象的时候才给定 public class InterImpl<T> implements Inter<T> { @Override public void show(T t) { System.out.println(t); }//这种情况时,接口Inter写<T>实现子类名InterImpl也要定义成<T>的形式 }
相关文章推荐
- Spring核心技术IoC容器(六)
- Spring in action 01 -- 装配 Bean(@Autowired)
- RxJava(四) concatMap操作符用法详解
- RxJava concatMap操作符用法详解
- jps,jmap,jstack等一系列jdk tools的实现原理.
- 另一份Java应用调优指南之-工具篇
- Java异常处理机制
- Spring-通过xml配置实现AOP
- Eclipse中Maven中央仓库索引的建立
- [javaSE] 基本数据类型对象包装类
- Spring之IOC(学习笔记)
- Java HashMap源码分析
- 面向对象
- Spring Aop 中的JDK动态代理的实现
- Java大牛养成记(9)----搭建java项目开发环境
- Error opening registry key 'software\Javasoft\Java Runtime Environment'”
- Java - PAT - 1005. 继续(3n+1)猜想 (25)
- JAVA—sleep()和wait()的区别
- java.math.BigDecimal cannot be cast to java.lang.String问题解决方案
- java笔记之重写,抽象