`

泛型:自定义泛型方法

    博客分类:
  • java
阅读更多

1、自定义泛型方法的格式



 

2、自定义泛型方法的代码

 

package com.atguigu.generic;

/**
 * 自定义泛型方法
 * @author LiPiaoShui
 */
public class User<T> {

	/**
	 * 此自定义泛型方法使用了自定义泛型类中的泛型,不需要添加<T> 
	 */
	public T getT(T t) {
		return t;
	}
	
	/**
	 * 此自定义泛型方法没有使用泛型类中的泛型,需要添加<E> 
	 */
	public <E> E getE(E e) {
		return e;
	}
	
	/**
	 * 静态方法中可以使用非类的其他泛型
	 */
	public static <E> void show(E e) {
		System.out.println(e);
	}
	
//	/**
//	 * 以下方法会报编译错误,因为静态方法中不能使用类的泛型
//	 */
//	public static void show(T t) {
//		System.out.println(t);
//	}
	
//	/**
//	 * 不能在catch中使用泛型
//	 */
//	public void tryFun() {
//		try {} catch(T t) {}
//	}
	
}

 

3、测试自定义泛型方法的代码

 

//4.自定义泛型方法
@Test
public void test4() {
	User<Boolean> user = new User<Boolean>();
	Boolean flag = user.getT(true);
	//输出:true
	System.out.println(flag);
	int score = user.getE(90);
	//输出:90
	System.out.println(score);
}

 

4、静态方法中不能使用类的泛型



 

5、静态方法中可以使用其他的非类泛型



 

6、不能在catch中使用泛型



 

 

 

  • 大小: 13.7 KB
  • 大小: 15.2 KB
  • 大小: 15.2 KB
  • 大小: 15 KB
分享到:
评论

相关推荐

    委托例子:自定义委托,泛型委托,多播委托,

    本示例是基于VS2015编译环境,主要展示了自定义委托、泛型委托以及多播委托的使用。 **一、自定义委托** 自定义委托允许我们创建符合特定签名的委托类型。首先,我们需要定义一个委托类,它声明了委托可以处理的...

    C++ primer 第十六章 泛型 实现自定义Queue 修改版

    泛型编程是C++中一种抽象数据类型的方法,它允许我们在编写代码时不需要指定具体的类型,而是使用一种通用的类型代表。在C++中,泛型编程的主要工具就是模板(templates)。模板可以分为函数模板和类模板两种。函数...

    泛型自定义数组大小

    在Java编程中,"泛型自定义数组大小"是一个重要的概念,它涉及到数据结构和算法的基础,以及面向对象编程中的类型安全。泛型是Java 5引入的一个特性,旨在提高代码的类型安全性,减少类型转换的冗余,并提供编译时的...

    java泛型学习ppt

    自定义简单泛型: * public class Gclass&lt;T&gt;{ private T a; public T getA() { return a; } public void setA(T a) { this.a = a; } } 泛型与继承: * 泛型中有继承的概念吗? * ArrayList&lt;Integer&gt; al2=new ...

    尚硅谷-实验2:自定义泛型类的使用.pdf

    本教程特点: 1.更适合零基础学员: ·自Java语言起源始,循序渐进,知识点剖析细致且每章配备大量随堂练习,让你步步为营,学得透彻、练得明白 ·拒绝晦涩难懂的呆板教学,宋老师语言生动幽默,举例形象生动深入浅...

    Dart中的泛型 泛型方法 泛型类 泛型接口、库 自定义库、系统库、第三方库.zip

    1. **泛型方法**:泛型方法允许我们在方法签名中使用类型参数,这样方法可以处理不同类型的参数,而不必为每种类型编写单独的方法。例如,`T identity(T value) =&gt; value;` 是一个泛型方法,它可以返回传入的任何...

    C#2.0 锐利体验系列课程(1):泛型编程

    8. 示例与实践:为了帮助学员更好地掌握泛型,课程会结合大量实例进行教学,包括自定义泛型容器、泛型缓存策略等实际应用场景,以提高解决实际问题的能力。 通过学习《C#2.0 锐利体验系列课程(1):泛型编程》,...

    .NET基础之自定义泛型分析

    本文实例分析了.NET基础之自定义泛型。分享给大家供大家参考。具体分析如下: 在.NET中泛型使用非常频繁,在控制台应用程序中,默认的引入了System.Collection.Generics名称空间,其中就提供了我们经常使用的泛型:...

    泛型dao 泛型dao 泛型dao

    } 告诉对哪个类操作,如不需要自定义扩展方法就作有一个构造方法。 泛型Service:GenericService.java 与泛型dao没有区别 Service :PersonService.java 直接继承。 泛型serviceimpl与serviceimpl实现和dao层...

    简单的List泛型模拟

    模拟List泛型: 1. 首先,我们需要创建一个名为`SimList`的类,它将作为我们的泛型列表模拟。 2. 在`SimList`类中,我们声明一个类型参数`E`,代表Element,这将是列表中元素的类型。例如: ```java public class ...

    自定义泛型实现元素交换

    本话题主要探讨如何自定义泛型集合,并实现其中元素的交换功能。 首先,让我们从创建一个泛型集合类开始。这个类将继承自`System.Collections.Generic.List&lt;T&gt;`,因为它提供了基本的集合操作,并且是泛型的,因此...

    链表+泛型+反射实现自定义的LinkedList集合类

    本资源通过实现一个自定义的LinkedList集合类,深入探讨了如何将链表、泛型和反射这三个关键知识点结合在一起。 首先,链表在Java中的标准实现是`java.util.LinkedList`类,它提供了添加、删除、查找等操作,支持...

    自定义泛型集合

    在Java编程语言中,自定义泛型集合是一个重要的概念,它允许我们创建具有类型安全性的容器类,以存储特定类型的对象。泛型是Java SE 5.0引入的一个特性,目的是提高代码的类型安全性,减少类转换异常,并提供更好的...

    3个泛型项目源码.rar

    1. 泛型容器:例如,自定义的堆栈、队列或者优先级队列等数据结构,利用泛型可以处理任何类型的数据,提高代码的复用性。 2. 泛型算法:比如排序、查找等算法,通过泛型,可以应用于不同类型的数据,无需为每种类型...

    c#方法异常和泛型

    在C#编程中,方法异常和泛型是两个至关重要的概念。它们构成了C#语言功能的核心部分,并在软件开发中发挥着关键作用。理解和熟练掌握这两个主题,将有助于提升你的编程技能,无论你是初学者还是有经验的开发者。 ...

    Java.SE 自定义泛型与泛型的常见陷阱

    Java.SE 自定义泛型与泛型的常见陷阱Java.SE 自定义泛型与泛型的常见陷阱

    C#泛型实例Demo

    通过阅读和运行这些代码,你可以更深入地理解泛型在实际开发中的应用,比如如何创建自定义的泛型容器、如何利用泛型方法实现通用算法,以及如何利用泛型委托处理事件等。对于C#的进阶学习者来说,熟练掌握泛型是提升...

    泛型方法的使用.rar

    由于使用了类型参数`T`,这个方法可以用于任何兼容的类型,如整数、字符串或其他自定义对象。 泛型方法的关键优点包括: 1. **类型安全**:编译器会在编译时检查类型参数,确保所有操作都是安全的。这意味着在运行...

    Java基础篇:泛型.pdf

    泛型的使用不限于集合框架,也可以用于定义自定义类和接口。在定义泛型类或接口时,可以使用类型参数(如T、K和V)来表示类中某些属性的类型或方法的返回值及参数类型。类型参数在使用时才被具体化,即在创建对象或...

Global site tag (gtag.js) - Google Analytics