使用泛型的自定义类,泛型可以使用任意的数据类型,在创建对象的时候确定是什么数据类型,创建对象的时候不使用泛型,那就默认是Object类型

格式:

使用泛型的自定义类

package cn.zhuobo.day10.aboutGeneric;

public class ClassGeneric<E> {
private E name; public ClassGeneric() {
} public ClassGeneric(E name) {
this.name = name;
} public E getName() {
return name;
} public void setName(E name) {
this.name = name;
}
}

创建对象

package cn.zhuobo.day10.aboutGeneric;

public class MainGeneric {
public static void main(String[] args) {
ClassGeneric<String> a = new ClassGeneric<>();
ClassGeneric<Integer> b = new ClassGeneric<>();
}
}

含有泛型的方法:

格式:泛型定义在方法的返回值类型和权限修饰符之间

修饰符 <泛型> 返回值类型 方法名(使用泛型的参数列表) {

}

含有泛型的方法,在调用的时候确定数据类型,传递的参数是什么类型,泛型就是什么类型

public <M> void method(M m) {
System.out.println(m);
} public static <M> void method11(M m, int a) {
if(a > 0) System.out.println(m);
}// 静态方法是类共有的,不用创建对象(虽然说也可以),直接类名调用静态方法

含有泛型的接口

泛型通配符

泛型通配符:?

代表任意的数据类型

不能创建 对象使用,只能作为方法的参数使用

比如我有两个ArrayList集合,一个是Integer,另一个是String,但是我希望这两个集合都可以被同一个方法遍历

public static void main(String[] args) {
ArrayList<Integer> list1 = new ArrayList<>();
ArrayList<String> list2 = new ArrayList<>();
method1(list1);
method1(list2);
} // method1的定义和实现如下:
public static void method1(ArrayList<?> list) {
Iterator it = list.iterator();
while(it.hasNext()) {
Object next = it.next();// 返回的是Object类型,因为只有Object才能接收任意的类型
System.out.println(next);
}
}

泛型通配符的限定:

上限限定:<? extends E>: 使用的泛型必须是E或者E的子类
下限限定:<? super E> :使用的泛型必须是E或者E的父类

自定义类使用泛型and方法使用泛型的更多相关文章

  1. JavaScript自定义类和对象的方法

    备注:JavaScript中没有类class的概念,一般把原型对象看作类 1. 工厂方法--使用new Object创建对象并添加相关属性 var Obj = new Object;         ...

  2. cocos2dx3.0导出自定义类到lua的方法详细步骤

    我写了一个用3.0的工具导出类到lua,自动生成代码的方法. 以前要导出c++类到lua,就得手动维护pkg文件,那简直就是噩梦,3.0以后就会感觉生活很轻松了. 下面我就在说下具体做法.1.安装必要 ...

  3. Python中自定义类未定义__lt__方法使用sort/sorted排序会怎么处理?

    在<第8.23节 Python中使用sort/sorted排序与"富比较"方法的关系分析>中介绍了排序方法sort和函数sorted在没有提供key参数的情况下默认调用 ...

  4. cocos2dx3.0rc导出自定义类到lua的方法

    以前要导出c++类到lua,就得手动维护pkg文件,那简直就是噩梦,3.0以后就会感觉生活很轻松了. 转载请注明出处http://www.cnblogs.com/mrblue/p/3637910.ht ...

  5. Python中自定义类如果重写了__repr__方法为什么会影响到str的输出?

    这是因为Python3中,str的输出是调用类的实例方法__str__来输出,如果__str__方法没有重写,则自动继承object类的__str__方法,而object类的__str__方法是调用_ ...

  6. 第8.16节 Python重写自定义类的__str__方法

    一. 引言 上节结合案例介绍了重写__repr__方法的关注点,重写__repr__方法的要点是要准确的输出开发人员关注的信息,并便于开发人员使用相关信息.而__str__方法是为最终用户返回类的相关 ...

  7. 第8.15节 Python重写自定义类的__repr__方法

    一. 引言 前面两节分别介绍了Python类中的__str__和__repr__方法的作用和语法,所有新式类都支持这两个方法,因为object类实现了这两个方法,但实际上各位开发者在自定义类的过程中, ...

  8. PyQt学习随笔:通过自定义类重写QApplication的notify方法捕获应用的所有消息

    PyQt程序通过调用QApplication类的exec_()(sys.exit(app.exec_()) 进入程序主循环,开始处理事件,它从事件队列中获取本地窗口系统事件,将它们转化为 QEvent ...

  9. Cocos2d-x——CocosBuilder官方帮助文档翻译1 使用自定义类

    原创:请注明转载! 在Cocos2d-x中使用CocosBuilder 使用自定义类 CocosBuilder的使用方法是通过自定义类.在CocosBuilder中选中一个对象并在属性栏中输入自定义类 ...

随机推荐

  1. 【bzoj3456】城市规划(多项式求逆+dp)

    Description 求\(~n~\)个点组成的有标号无向连通图的个数.\(~1 \leq n \leq 13 \times 10 ^ 4~\). Solution 这道题的弱化版是poj1737, ...

  2. 【BZOJ5332】[SDOI2018]旧试题(数论,三元环计数)

    [BZOJ5332][SDOI2018]旧试题(数论,三元环计数) 题面 BZOJ 洛谷 题解 如果只有一个\(\sum\),那么我们可以枚举每个答案的出现次数. 首先约数个数这个东西很不爽,就搞一搞 ...

  3. 「SCOI2014」方伯伯的 OJ 解题报告

    「SCOI2014」方伯伯的 OJ 和列队有点像,平衡树点分裂维护即可 但是需要额外用个set之类的对编号查找点的位置 插入完了后记得splay,删除时注意特判好多东西 Code: #include ...

  4. docker-compose.yml(3)

    ELK:version: '2' services: elasticsearch: build: context: elasticsearch/ volumes: - ./elasticsearch/ ...

  5. ocr智能图文识别 tess4j 图文,验证码识别

    最近写爬虫采集数据,遇到网站登录需要验证码校验,想了想有两种解决办法 1,利用htmlunit,将验证码输入到swing中,并弹出一个输入框,手动输入验证码,这种实现方式,如果网站需要登录一次可以使用 ...

  6. 【洛谷P3455】ZAP-Queries

    题目大意:求 \[\sum\limits_{i=1}^a\sum\limits_{j=1}^b[gcd(i,j)=c]\] 题解:学会了狄利克雷卷积. \[\epsilon=\mu \ast 1\] ...

  7. Spring 4 : 整合 SSH

    简介:ssh的整合 1       SSH整合 1.1   jar整合 struts:2.3.15.3 hibernate : 3.6.10 spring: 3.2.0 1.1.1   struts( ...

  8. Day20--Python--约束和异常处理

    1. 异常处理(处理异常,抛出异常,自定义异常) 异常: 程序运行过程中产生的错误 1. 产生异常. raise 异常类(), 抛出异常 2. 处理异常: try: xxxxxxxx # 尝试执行的代 ...

  9. 数位DP入门题

    站点一览: hdu 2089"不要62" hdu 4734"F(X)" poj 3252"Round Numbers" hdu 3709&q ...

  10. Contest1585 - 2018-2019赛季多校联合新生训练赛第一场(部分题解)

    Contest1585 - 2018-2019赛季多校联合新生训练赛第一场 C 10187 查找特定的合数 D 10188 传话游戏 H 10192 扫雷游戏 C 传送门 题干: 题目描述 自然数中除 ...