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 泛型实际上有很多缺陷,比如不能直接获取泛型的类型,不能获取带泛型类等. 以下方式是不正确的: ①.获取带泛型的类的类型 Class lstUClazz = List<User>.class ②获取局部变量泛型的类型 List<User> listUser = new ArrayList<User>(); Type genType = listUser.getClass().getClass().getGenericSuperc
-
Java中的泛型详解
所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数,也可称为类型实参) 泛型类或接口 "菱形"语法 复制代码 代码如下: //定义 public interface List<E> extends Collection<E> public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V
-
Java泛型与数据库应用实例详解
本文实例讲述了Java泛型与数据库应用.分享给大家供大家参考,具体如下: 一 点睛 BaseDao定义了基本的数据库增删查改, 之后可以继承该泛型类,实现各自的增删查改,或者使用超类的增删查改,同时每个继承类还能增加自己的操作. 二 实战 1 BaseDao.java import java.lang.reflect.Field; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared
-
Java定义泛型方法实例分析
本文实例讲述了Java定义泛型方法.分享给大家供大家参考,具体如下: 一 点睛 1 如果定义类.接口是没有使用类型形参,但定义方法时想自己定义类型形参,这也是可以的,JDK1.5还提供了泛型方法的支持. 2 泛型方法的语法格式为: 修饰符 <T , S> 返回值类型 方法名(形参列表) { //方法体... } 3 泛型方法的方法签名比普通方法的方法签名多了类型形参声明,类型形参声明以尖括号括起来,多个类型形参之间以逗号(,)隔开,所有类型形参声明放在方法修饰符和方法返回值类型之间.
-
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
-
Java泛型定义与用法入门示例
本文实例讲述了Java泛型定义与用法.分享给大家供大家参考,具体如下: 一 引入泛型背景 Java集合不会知道它们需要用它来保存什么类型的对象,所以他们把集合设计成能保存任何类型的对象,只要求具有很好的通用性.但这样做也带来两个问题: 集合对元素类型没有任何限制,这样可能引发一些问题:例如想创建一个只能保存Dog对象的集合,但程序也可以轻易地将Cat对象"丢"进去,所以可能引发异常. 由于把对象"丢进"集合时,集合丢失了对象的状态信息,集合只知道它盛装的是Objec
-
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泛型继承原理与用法详解
本文实例讲述了Java泛型继承原理与用法.分享给大家供大家参考,具体如下: 一 点睛 当创建了带泛型声明的接口.父类之后,可以为该接口创建实现类,或从该父类来派生子类,但值得指出的是,当使用这些接口.父类时不能再包含类型形参. 如果使用泛型类时没有传入实际的类型参数,Java编译器可能发出警告:使用了未经检查或不安全的操作--这就是泛型检查的警告. 二 实战--传入实际的类型参数 public class A1 extends Apple<String> { // 正确重写了父类的方法,返回值
-
Java定义泛型接口和类的方法实例分析
本文实例讲述了Java定义泛型接口和类的方法.分享给大家供大家参考,具体如下: 一 点睛 所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数,也可称为类型实参). JDK1.5改写了集合框架中的全部接口和类,为这些接口.类增加了泛型支持,从而可以在声明集合变量.创建集合对象时传入类型实参. 二 实战 1 代码 // 定义Apple类时使用了泛型声明 public class Apple<T> { // 使用T类型形参定义实例变量 pr
-
基于java中泛型的总结分析
要我直接说出泛型是个what我还真讲不出来,这里先由一道问题引入: 定义一个坐标点类,要求能保存各种类型的数据,如:整形,浮点型,和字符串类型 既然变量类型起先不确定,那么很容易想到就是用所有类型的父类,也就是Object类来代替 不废话了,用代码来体现 实例1:用Object来实现不确定的数据类型输入 复制代码 代码如下: //这是定义的坐标点类class Point { private Object x; private Object y; //用Object来表示不确定的类型
随机推荐
- python client使用http post 到server端的代码
- Ajax 配合node js multer 实现文件上传功能
- JavaScript中__proto__与prototype的关系深入理解
- 老生常谈Python基础之字符编码
- servlet+JSP+mysql实现文件上传的方法
- Android下通过httpClient发送GET和POST请求的实例代码
- mysql 5.7.16 安装配置方法图文教程(ubuntu 16.04)
- python中enumerate函数用法实例分析
- 新增加一个防垃圾评论的asp代码,鄙视垃圾
- SqlServer编写数据库表的操作方式(建库、建表、修改语句)
- 基于jQuery制作迷你背词汇工具
- JS中常用的输出方式(五种)
- IE:如何做到全屏显示
- python中dir函数用法分析
- android之RatingBar控件用法详解
- 详解Spring Data JPA动态条件查询的写法
- java 集合之实现类ArrayList和LinkedList的方法
- C#定义简单的反射工厂实例分析
- Windows快捷键大全
- C#获取所有进程的方法