`
啸笑天
  • 浏览: 3462515 次
  • 性别: Icon_minigender_1
  • 来自: China
社区版块
存档分类
最新评论

42 自定义泛型类的应用

 
阅读更多

 

l  如果类的实例对象中的多处都要用到同一个泛型参数,即这些地方引用的泛型类型要保持同一个实际类型时,这时候就要采用泛型类型的方式进行定义,也就是类级别的泛型,语法格式如下:

       public class GenericDao<T> {

              private T field1;

              public void save(T obj){}

              public T getById(int id){}

       }

l  类级别的泛型是根据引用该类名时指定的类型信息来参数化类型变量的,例如,如下两种方式都可以:

Ø  GenericDao<String> dao = null;

Ø  new genericDao<String>();

l  注意:

Ø  在对泛型类型进行参数化时,类型参数的实例必须是引用类型,不能是基本类型。

Ø  当一个变量被声明为泛型时,只能被实例变量、方法和内部类调用,而不能被静态变量和静态方法调用。因为静态成员是被所有参数化的类所共享的,所以静态成员不应该有类级别的类型参数。

l  问题:类中只有一个方法需要使用泛型,是使用类级别的泛型,还是使用方法级别的泛型?

        方法级别的泛型

 

 

 
package cn.zyj36.review;
 
import java.util.Set;
 
//dao data access object--->crud
public class GenericDao<E>  {
   public void add(E x){
     
   }
  
   public E findById(int id){
      return null;
   }
  
   public void delete(E obj){
     
   }
  
   public void delete(int id){
     
   } 
  
   public void update(E obj){
     
   }
  
   public static <E> void update2(E obj){//这个E不同于泛型类型的E
     
   }
  
   public E findByUserName(String name){
      return null;
   }
   public Set<E> findByConditions(String where){
      return null;
   }
}
分享到:
评论

相关推荐

    实例185 - 自定义泛型化数组类

    "实例185 - 自定义泛型化数组类"是一个关于如何创建和使用自定义泛型数组类的示例,这个主题将深入探讨泛型、数组以及两者的结合。 首先,我们需要理解泛型的基本概念。泛型是Java 5引入的一个重要特性,它允许我们...

    自定义泛型集合

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

    浅谈c# 泛型类的应用

    例如,`List&lt;T&gt;`就是一个泛型类,它可以用来存储任何类型的对象,如整数、字符串或自定义类。泛型类使得开发者能够在不牺牲性能的情况下,实现类型安全的数据容器。 2. **泛型类的继承** - **继承具体类**:泛型类...

    java泛型的应用

    自定义泛型类也是泛型的一个重要应用,允许我们为自己的类和接口添加类型参数,以确保它们在操作数据时遵循特定的类型规则。自定义泛型类时,需要在类名后面的尖括号`&lt;&gt;`中声明类型参数,然后在类的方法或成员中使用...

    c# 自定义泛型链表类的详解

    在C#编程语言中,自定义泛型链表类是一种高效的数据结构,它允许程序员创建一个可以存储不同...在实际开发中,这种自定义泛型链表类的应用非常广泛,特别是在处理大量数据或者需要按顺序访问但不确定数据数量的场景下。

    c#使用 和 继承 泛型类

    泛型类是泛型的一种应用,可以在多个不同的数据类型上工作,提供了更高的类型安全性和性能。本篇文章将深入探讨如何在C#中使用和继承泛型类。 首先,让我们理解什么是泛型类。泛型类是一种模板或蓝图,它定义了参数...

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

    自定义泛型类时,常常需要结合上述各种约束使用,以确保泛型类在编译时能够保证类型安全,并在运行时能够提供必要的类型信息。下面给出了一个具体的实例: 首先定义了一个Animal基类,该基类是一个抽象类,它包含一...

    泛型自定义数组大小

    自定义泛型类可以模拟数组的行为,但比数组更灵活。我们可以通过泛型类定义一个可以容纳任意类型对象的容器,同时规定容器中元素的类型。这样可以确保添加到容器中的元素都是同类型的,从而提高代码的健壮性。 4. ...

    实例讲解Java泛型编程的快速入门

    泛型在Java中主要应用于类、接口和方法,使得程序员可以在编译时检查类型安全,并且可以消除运行时的类型检查和强制转换。 1. **泛型的基本概念** - 类型参数:在类或接口声明中,类型参数(如`K`, `V`)代表一种...

    泛型和泛型集合类用法

    除了使用内置的泛型集合类之外,还可以自定义泛型类。例如: ```csharp public class ItemList { private List&lt;T&gt; items = new List(); public void Add(T item) { items.Add(item); } public T Get(int ...

    C# 泛型委托示例 应用解析

    这是一个泛型委托的示例,主要是让初学者了解泛型委托的用法,虽然很简单,但是代码有注释,我的这个例子是在vs2010中做的,用vs08的朋友们,最好还是转一下,但是绝对能实现(本程序是控制台应用程序,适合初学者)...

    泛型集合应用(dictionary<obj,obj>)

    本文将深入探讨“泛型集合应用——Dictionary, Obj&gt;”这一主题,揭示其在实际开发中的广泛应用。 首先,我们来了解什么是泛型。泛型是.NET框架的一个核心特性,它允许我们在编写代码时定义类型参数,这些参数可以在...

    Android Intent传递泛型类

    当我们需要在Activity之间传递复杂的数据结构,比如自定义的泛型类对象时,Intent就显得尤为重要。本文将深入探讨如何在Android Intent中传递泛型类。 首先,了解Intent的基本用法。Intent通常包含两个主要部分:...

    Java-Custom-Generics:在 Java 中使用自定义泛型的简单示例

    在Java中,自定义泛型主要是指在我们自己编写的类、接口或方法中使用泛型。这个“Java-Custom-Generics:在 Java 中使用自定义泛型的简单示例”很可能是为了展示如何在实际编程中应用泛型。 泛型的引入旨在提高代码...

    c# 泛型应用实例

    例如,我们可以创建一个名为`MyGenericClass&lt;T&gt;`的泛型类,其中`T`可以是任何类型,如`int`、`string`或自定义类。这使得类实例化时可以灵活地选择具体类型,提供高度的代码复用。 2. **泛型接口**:与泛型类类似,...

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

    泛型接口通常用于定义一组操作,这些操作可以应用于不同类型的对象。例如,`abstract class ListBase&lt;T&gt; {}` 可以看作是一个泛型列表接口,`List`类就是实现了这个接口的一个具体示例。 4. **库**:Dart中的库是...

    TypeScript的泛型接口 泛型类接口.zip

    本篇将深入探讨泛型接口和泛型类接口,以及如何在实际项目中应用它们。 首先,我们来理解泛型接口。在TypeScript中,接口(Interface)用于定义对象的结构,而泛型接口则是具有一个或多个类型参数的接口。这样,...

    3个泛型项目源码.rar

    压缩包中的项目可能涵盖以下泛型应用场景: 1. 泛型容器:例如,自定义的堆栈、队列或者优先级队列等数据结构,利用泛型可以处理任何类型的数据,提高代码的复用性。 2. 泛型算法:比如排序、查找等算法,通过泛型...

    C#泛型实例Demo

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

Global site tag (gtag.js) - Google Analytics