Java泛型的继承和实现操作示例
本文实例讲述了Java泛型的继承和实现操作。分享给大家供大家参考,具体如下:
一 点睛
泛型类和泛型接口被定义后,是可以被继承和实现的。
二 泛型类的继承
1 代码
class A<E> { E t; } public class B<T,T1>extends A<T>{ public static void main(String[] args){ System.out.println("B test"); } }
2 运行
B test
3 说明
子类B在定义的时候,如果省略了A后<T>,那么B的T自动变成了Object,建议定义时加入<T>以保留父类的类型参数。B类还可以增加新的泛型T1。
三 泛型接口的实现
1 代码
interface IT<E> { public E dis(); } public class testIT<E> implements IT<E> { E e; public testIT( E e ) { this.e = e; } public E dis() { return e; } public static void main( String[] args ) { testIT<String> tt = new testIT<String>("test"); System.out.println(tt.dis()); } }
2 运行
test
3 说明
实现类testIT不能省略<E>。
必须和普通实现类一样,实现IT接口中的所有方法。
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
相关推荐
-
Java泛型定义与用法入门示例
本文实例讲述了Java泛型定义与用法.分享给大家供大家参考,具体如下: 一 引入泛型背景 Java集合不会知道它们需要用它来保存什么类型的对象,所以他们把集合设计成能保存任何类型的对象,只要求具有很好的通用性.但这样做也带来两个问题: 集合对元素类型没有任何限制,这样可能引发一些问题:例如想创建一个只能保存Dog对象的集合,但程序也可以轻易地将Cat对象"丢"进去,所以可能引发异常. 由于把对象"丢进"集合时,集合丢失了对象的状态信息,集合只知道它盛装的是Objec
-
Java泛型与数据库应用实例详解
本文实例讲述了Java泛型与数据库应用.分享给大家供大家参考,具体如下: 一 点睛 BaseDao定义了基本的数据库增删查改, 之后可以继承该泛型类,实现各自的增删查改,或者使用超类的增删查改,同时每个继承类还能增加自己的操作. 二 实战 1 BaseDao.java import java.lang.reflect.Field; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared
-
Java中的泛型详解
所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数,也可称为类型实参) 泛型类或接口 "菱形"语法 复制代码 代码如下: //定义 public interface List<E> extends Collection<E> public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V
-
Java 获取泛型的类型实例详解
Java 获取泛型的类型实例详解 Java 泛型实际上有很多缺陷,比如不能直接获取泛型的类型,不能获取带泛型类等. 以下方式是不正确的: ①.获取带泛型的类的类型 Class lstUClazz = List<User>.class ②获取局部变量泛型的类型 List<User> listUser = new ArrayList<User>(); Type genType = listUser.getClass().getClass().getGenericSuperc
-
Java定义泛型接口和类的方法实例分析
本文实例讲述了Java定义泛型接口和类的方法.分享给大家供大家参考,具体如下: 一 点睛 所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数,也可称为类型实参). JDK1.5改写了集合框架中的全部接口和类,为这些接口.类增加了泛型支持,从而可以在声明集合变量.创建集合对象时传入类型实参. 二 实战 1 代码 // 定义Apple类时使用了泛型声明 public class Apple<T> { // 使用T类型形参定义实例变量 pr
-
Java泛型继承原理与用法详解
本文实例讲述了Java泛型继承原理与用法.分享给大家供大家参考,具体如下: 一 点睛 当创建了带泛型声明的接口.父类之后,可以为该接口创建实现类,或从该父类来派生子类,但值得指出的是,当使用这些接口.父类时不能再包含类型形参. 如果使用泛型类时没有传入实际的类型参数,Java编译器可能发出警告:使用了未经检查或不安全的操作--这就是泛型检查的警告. 二 实战--传入实际的类型参数 public class A1 extends Apple<String> { // 正确重写了父类的方法,返回值
-
Java定义泛型方法实例分析
本文实例讲述了Java定义泛型方法.分享给大家供大家参考,具体如下: 一 点睛 1 如果定义类.接口是没有使用类型形参,但定义方法时想自己定义类型形参,这也是可以的,JDK1.5还提供了泛型方法的支持. 2 泛型方法的语法格式为: 修饰符 <T , S> 返回值类型 方法名(形参列表) { //方法体... } 3 泛型方法的方法签名比普通方法的方法签名多了类型形参声明,类型形参声明以尖括号括起来,多个类型形参之间以逗号(,)隔开,所有类型形参声明放在方法修饰符和方法返回值类型之间.
-
Java中方法名称和泛型相同的用法示例
本文实例讲述了Java中方法名称和泛型相同的用法.分享给大家供大家参考,具体如下: 一 点睛 Java中,方法的名称可以用泛型替代. 二 实战 1 代码 public class SupGent { public class A<E> { E t; public A( E t ) { this.t = t; } public E E() { //采用了泛型E,碰巧方法名称也是E,只不过不要弄混淆,有点像宏替换 return t; } } public class B<E> exte
-
基于java中泛型的总结分析
要我直接说出泛型是个what我还真讲不出来,这里先由一道问题引入: 定义一个坐标点类,要求能保存各种类型的数据,如:整形,浮点型,和字符串类型 既然变量类型起先不确定,那么很容易想到就是用所有类型的父类,也就是Object类来代替 不废话了,用代码来体现 实例1:用Object来实现不确定的数据类型输入 复制代码 代码如下: //这是定义的坐标点类class Point { private Object x; private Object y; //用Object来表示不确定的类型
-
Java泛型和Class类用法示例
本文实例讲述了Java泛型和Class类用法.分享给大家供大家参考,具体如下: 一 点睛 从JDK1.5之后,Java的Class类增加了泛型功能,从而允许使用泛型来限制Class类,例如,String.class 的类型实际上是Class<String>. 使用Class<T>泛型可以避免强制类型转换. 二 实战1 import java.util.*; import javax.swing.*; public class CrazyitObjectFactory2 { publ
随机推荐
- Docker搭建本地私有仓库的详细步骤
- Python的Twisted框架上手前所必须了解的异步编程思想
- 原生js实现日期联动
- Asp.net treeview实现无限级树实现代码
- 基于php缓存的详解
- Ajax PHP 边学边练 之三 数据库
- 使用HTML5+Boostrap打造简单的音乐播放器
- 一张图告诉你计算机编程语言的发展历史
- asp 正则实现清除html文本格式的函数代码
- jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
- 关于JavaScript的面向对象和继承有利新手学习
- systemd添加自定义系统服务设置自定义开机启动的方法
- Java画笔的简单实用方法
- C语言中全局数组和局部数组的问题
- 易萌网为您提供100M免费ASP空间和30M免费静态空间服务
- 基于Python的文件类型和字符串详解
- Python实现简单遗传算法(SGA)
- vue 使用eventBus实现同级组件的通讯
- Docker 镜像加速器的方法
- Java Robot应用示例之机器人功能