- 浏览: 397717 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (760)
- 股票日志 (26)
- Selenium (0)
- selenium 2 环境的搭建 (1)
- 并发 (7)
- 框架开发 (1)
- 动态代理 (2)
- Struts2 (2)
- POI (2)
- jdk (3)
- maven (31)
- spring (35)
- mysql (31)
- 工作机会 (3)
- xtream (1)
- oracle dbms_metadata GET_DDL (0)
- SSI (1)
- DB (61)
- powermock (4)
- java 基础 (25)
- 多线程 (11)
- 高手 (2)
- java 底层 (2)
- 专业网站 (1)
- 开发联想 (1)
- 开发联想 (1)
- bat文件 (2)
- 清queue 语句 (1)
- 清queue 语句 (1)
- jquery (7)
- html5 (1)
- Jenkins (10)
- Linux (17)
- 工作issue (2)
- tomcat log (3)
- jvm (23)
- 项目细节 (0)
- oracle (41)
- 泛型 (3)
- 新知识点 (1)
- 数据库ddl 语句 (0)
- AQ (2)
- jms (0)
- 网络资源 (6)
- github (6)
- Easymock (1)
- Dom 解析XML (1)
- windows命令 (2)
- java (7)
- 正则表达式 (5)
- sequence (1)
- oracle 表meta信息 (1)
- 小工具技巧 (1)
- 辅助工具 (1)
- Junit (1)
- 泛型 generic (2)
- Java程序设计 (1)
- cglib (2)
- 架构师之路 (1)
- 数据库连接池 (5)
- c3p0 (1)
- eclipse使用 (1)
- oracle sql plus (1)
- 码农人生 (3)
- SVN (15)
- sqlplus (2)
- jsoup (1)
- 网络爬虫 (2)
- 新技能 (1)
- zookeeper (4)
- hadoop (1)
- SVNKIT (1)
- 从工具到知识点的整理 (1)
- log4j (13)
- 读文件 (0)
- 转义字符 (1)
- command (1)
- web service (3)
- 锁 (1)
- shell 脚本 (1)
- 遇到的错误 (2)
- tomcat (14)
- 房产 (5)
- bootstrap jquery ui (1)
- easyui (2)
- 个人征信 (1)
- 读写分离 (1)
- 备份 (1)
- rmi (6)
- webservice (1)
- JMX (4)
- 内存管理 (3)
- java设计 (1)
- timer (1)
- lock (2)
- concurrent (2)
- collection (1)
- tns (1)
- java基础 (15)
- File (1)
- 本机资源 (1)
- bat (1)
- windows (4)
- 数据结构 (3)
- 代码安全 (1)
- 作用域 (1)
- 图 (2)
- jvm内存结构 (1)
- 计算机思想 (1)
- quartz (6)
- Mongo DB (2)
- Nosql (4)
- sql (5)
- 第三方Java 工具 jar 项目 (2)
- drools (1)
- java swing (2)
- 调用console (1)
- runtime (1)
- process (1)
- swing (2)
- grouplayout (1)
- dubbo (0)
- bootstrap (0)
- nodejs (2)
- SVN hooks (1)
- jdbc (3)
- jdbc error (1)
- precedure (1)
- partition_key (1)
- active mq (1)
- blob (2)
- Eclipse (6)
- web server (1)
- bootstrapt (2)
- struts (1)
- ajax (1)
- js call back (1)
- 思想境界拓展 (1)
- JIRA (1)
- log (1)
- jaxb (3)
- xml java互相转换 (1)
- 装修 (2)
- 互联网 (2)
- threadlocal (3)
- mybatis (22)
- xstream (1)
- 排序 (1)
- 股票资源 (1)
- RPC (2)
- NIO (3)
- http client (6)
- 他人博客 (1)
- 代理服务器 (1)
- 网络 (2)
- web (1)
- 股票 (5)
- deadlock (1)
- JConsole (2)
- activemq (3)
- oralce (1)
- 游标 (1)
- 12月13日道富内部培训 (0)
- grant (1)
- 速查 (2)
- classloader (4)
- netty (4)
- 设计模式 (2)
- 缓存 (2)
- ehcache (2)
- framework (1)
- 内存分析 (2)
- dump (1)
- memory (2)
- 多高线程,并发 (1)
- hbase (2)
- 分布式系统 (1)
- socket (3)
- socket (1)
- 面试问题 (1)
- jetty (2)
- http (2)
- 源码 (1)
- 日志 (2)
- jni (1)
- 编码约定 (1)
- memorycache (1)
- redis (13)
- 杂谈 (1)
- drool (1)
- blockingqueue (1)
- ScheduledExecutorService (1)
- 网页爬虫 (1)
- httpclient (4)
- httpparser (1)
- map (1)
- 单例 (1)
- synchronized (2)
- thread (1)
- job (1)
- hashcode (1)
- copyonwriteArrayList (2)
- 录制声音 (1)
- java 标准 (2)
- SSL/TLS (1)
- itext (1)
- pdf (1)
- 钻石 (2)
- sonar (1)
- unicode (1)
- 编码 (4)
- html (1)
- SecurityManager (1)
- 坑 (1)
- Restful (2)
- svn hook (1)
- concurrentHashMap (1)
- 垃圾回收 (1)
- vbs (8)
- visual svn (2)
- power shell (1)
- wmi (3)
- mof (2)
- c# (1)
- concurrency (1)
- 劳动法 (1)
- 三国志游戏 (2)
- 三国 (1)
- 洪榕 (2)
- 金融投资知识 (1)
- motan (1)
- tkmybatis mapper (1)
- 工商注册信息查询 (1)
- consul (1)
- 支付业务知识 (2)
- 数据库备份 (1)
- 字段设计 (1)
- 字段 (1)
- dba (1)
- 插件 (2)
- PropEdit插件 (1)
- web工程 (1)
- 银行业知识 (2)
- 国内托管银行 (1)
- 数据库 (1)
- 事务 (2)
- git (18)
- component-scan (1)
- 私人 (0)
- db2 (14)
- alias (1)
- 住房 (1)
- 户口 (1)
- fastjson (1)
- test (6)
- RSA (2)
- 密钥 (1)
- putty (1)
- sftp (1)
- 加密 (1)
- 公钥私钥 (3)
- markdown (1)
- sweet (1)
- sourcetree (1)
- 好工具 (1)
- cmd (1)
- scp (1)
- notepad++ (1)
- ssh免密登录 (1)
- https (1)
- ssl (2)
- js (2)
- h2 (1)
- 内存 (2)
- 浏览器 (1)
- js特效 (1)
- io (1)
- 乱码 (1)
- 小工具 (1)
- 每周技术任务 (1)
- mongodb (7)
- 内存泄漏 (1)
- 码云 (2)
- 如何搭建java 视频服务器 tomcat (1)
- 资源 (1)
- 书 (1)
- 四色建模法 (1)
- 建模 (1)
- 配置 (1)
- 职位 (1)
- nginx (1)
- excel (1)
- log4j2 (2)
- 做菜 (1)
- jmap (1)
- jspwiki (1)
- activiti (1)
- 工作流引擎 (1)
- 安卓 (1)
- acitviti 例子 (1)
- 二维码 (1)
- 工作流 (1)
- powerdesign (2)
- 软件设计 (1)
- 乐观锁 (1)
- 王者荣耀 (1)
- session (2)
- token (5)
- cookie (4)
- springboot (24)
- jwt (2)
- 项目路径 (1)
- magicbook (1)
- requestType (1)
- json (2)
- swagger (1)
- eolinker (1)
- springdata (1)
- springmvc (1)
- controlleradvice (1)
- profile (1)
- 银行四要素 (1)
- 支付人员资源 (1)
- 支付渠道 (1)
- yaml (1)
- 中文编码 (1)
- mongo (2)
- serializable (1)
- 序列化 (1)
- zyd (1)
- unittest (1)
- 工具 (1)
- Something (1)
- 通达信 (1)
- protobuf (1)
- 算法 (1)
- springcloud (2)
- hikari (1)
- rocketmq (7)
- cachecloud (1)
- serfj (1)
- axure (1)
- lombok (1)
- 分布式锁 (1)
- 线程 (2)
- 同步代码块 (1)
- cobar (1)
- mq (1)
- rabbitmq (1)
- 定时执行 (1)
- 支付系统 (3)
- 唱歌 (1)
- elasticjob (1)
- 定时任务 (1)
- 界面 (1)
- flink (2)
- 大数据 (1)
- 接私活 (0)
- 内部培训 (2)
最新评论
-
dannyhz:
做股票从短线 试水,然后 慢慢发现 波段和 中期的故事可挖, ...
搭台唱戏 -
dannyhz:
http://developer.51cto.com/art/ ...
如何自己开发框架 它的注意点是什么
public interface Animal<T> {
public void eat(T t);
public T search(T t);
}
public class Dog<T> implements Animal<T>{
@Override
public void eat(T t) {
}
@Override
public T search(T t) {
return t;
}
}
public interface Food {
}
public class Meat implements Food{
}
public class Bread {
}
public class TestAnimal {
@Test
public void testEat1(){
Dog<Meat> dog = new Dog<Meat>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Meat food = dog.search(meat);
}
@Test
public void testEat2(){
Dog<Food> dog = new Dog<Food>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Food food = dog.search(meat);
}
@Test
public void testEat(){
Dog<Food> dog = new Dog<Food>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Food food = dog.search(meat);
}
}
public void eat(T t);
public T search(T t);
}
public class Dog<T> implements Animal<T>{
@Override
public void eat(T t) {
}
@Override
public T search(T t) {
return t;
}
}
public interface Food {
}
public class Meat implements Food{
}
public class Bread {
}
public class TestAnimal {
@Test
public void testEat1(){
Dog<Meat> dog = new Dog<Meat>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Meat food = dog.search(meat);
}
@Test
public void testEat2(){
Dog<Food> dog = new Dog<Food>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Food food = dog.search(meat);
}
@Test
public void testEat(){
Dog<Food> dog = new Dog<Food>();
dog.eat(new Meat());
dog.eat(new Bread());
Meat meat = new Meat();
Food food = dog.search(meat);
}
}
相关推荐
此外,文件名`Java.jpg`可能表示的是一个与这个泛型例子相关的图片,可能是一个截图或者示意图,用于帮助理解泛型的概念或者`MyFirstGeneric`类的结构和用法。在实际学习过程中,视觉辅助工具往往能够帮助我们更好地...
在"高级无敌,c#泛型例子"这个主题中,我们将深入探讨C#泛型的基本概念、优势以及如何实际应用。 首先,泛型是C#中引入的一种类型参数化机制。在定义类或方法时,我们可以使用类型参数(如`T`)来代替具体的类型,...
这个例子展示了如何综合运用Java IO流、XML解析和泛型。通过Java IO流读取XML文件,使用DOM解析XML内容,最后将结果存储到泛型集合中。这样的设计提高了代码的类型安全性,同时使数据处理更加高效和灵活。 总之,...
Java泛型是Java编程语言中的一个关键特性,它在2004年随着JDK 5.0的发布被引入,极大地增强了类型安全性和代码可读性。...对于Java泛型的例子,可以通过运行和分析压缩包中的`generic`文件来加深理解和实践。
- `泛型例子.rar`可能是独立的泛型代码示例,包括如何声明和使用泛型类、接口和方法。 - `DAO(1).rar`可能包含使用泛型的DAO设计模式示例,展示了如何创建泛型DAO以处理不同类型的数据对象。 综上所述,SSH框架...
**Java泛型是JDK1.5引入的一个重要特性,极大地提高了代码的类型安全性和重用性。在泛型出现之前,程序员需要在运行时进行强制...在JDK1.5提供的泛型例子中,你可以找到各种泛型的使用场景,通过实践加深对泛型的理解。
下面的例子展示了一个返回两个参数最大值的泛型方法: ```csharp public static T MaxValue(T a, T b) where T : IComparable { if (a.CompareTo(b) > 0) return a; else return b; } ``` 泛型接口则定义了...
在`Testrefl.java`这个例子中,我们可以假设它展示了如何使用反射和泛型相结合的能力。可能的情况是,该文件包含一个类,这个类有一个泛型方法,用于根据传入的类型参数动态创建对象并调用其方法。下面是一个可能的...
Java 泛型是Java SE 5.0引入的一项重要特性,极大地增强了代码的类型安全性和重用性。泛型方法是泛型技术在类方法层面的应用,它允许我们定义一个可以处理多种数据类型的通用方法。下面我们将深入探讨Java泛型方法的...
泛型Dictionary使用详解 在编程中,泛型是非常重要的一个概念,它可以使得编程更加灵活和高效。在本文中,我们将详细介绍泛型Dictionary的使用,包括其结构、特点、操作方法等。 泛型Dictionary的结构 泛型...
JAVA中 关于泛型 以及反射的例子 欢迎下载 一起研究
泛型编程是Java、C#等面向对象编程语言中的一项重要特性,它允许在定义类、接口和方法时使用类型参数,从而实现代码的复用并提供编译时的类型安全检查。本教程将以Java中的List接口为例,深入探讨泛型编程的概念、...
以下是一个使用泛型的例子,展示了如何创建一个泛型类和泛型方法: ```java // 泛型类示例 public class Box<T> { private T t; public void set(T t) { this.t = t; } public T get() { return t; } } //...
在C#编程中,泛型是一种强大的特性,它允许我们创建可重用的类型安全的代码,能够处理多种数据类型。"泛型封装.rar"这个...通过深入研究这个例子,开发者可以更好地理解和掌握C#中的泛型技术,提升代码质量和效率。
这个例子,"泛型第一个例子",显然是一个关于如何在Java中使用泛型的示例。下面我们将深入探讨泛型的基本概念、用途,以及如何通过给定的`Fanxing.java`和`A.java`文件来理解和应用泛型。 首先,让我们了解泛型的...
在这个例子中,我们使用了泛型列表来存储字符串数据,并将其绑定到Repeater。Repeater根据ItemTemplate中的模板,将每个数据项("数据1", "数据2", "数据3")渲染成HTML段落。 通过这种方式,我们无需通过数据库...
在这个例子中,`T` 是类型参数,它代表任何类型的对象。我们可以在创建 `Box` 对象时指定具体的类型: ```java Box<String> stringBox = new Box(); stringBox.setItem("Hello, World!"); String s = stringBox....
为了更好地理解泛型集合与非泛型集合之间的差异,我们来看一个具体的例子。假设我们需要创建一个集合来存储整数。 ##### 非泛型集合示例 ```csharp ArrayList numbers = new ArrayList(); numbers.Add(22); ...
在这个例子中,`T`被约束为必须是一个结构体(枚举是结构体)且是枚举类型,这样我们就确保了`EnumCollection`只能处理枚举类型。 接下来,我们讨论非泛型实现枚举功能。在某些情况下,如果我们的枚举类型是固定的...