zoukankan      html  css  js  c++  java
  • 范型在java中的应用

          根据泛型在java中的不同位置,大致可以分为类泛型、方法泛型和接口泛型。以下三个Demo基本展现三种泛型的用法,其中接口泛型又分两种情况描述。
    类泛型和方法泛型

     1 import java.util.ArrayList;
     2 
     3 //类泛型
     4 class DemoClass<T> {
     5     public void method(T t) {
     6         System.out.println(t);
     7     }
     8 }
     9 
    10 class ClassDemo {
    11     //方法泛型
    12     public static <E> void Method(E e) {
    13         System.out.println(e);
    14     }
    15 }
    16 
    17 public class TriggerPrint {
    18     public static void main(String[] args) {
    19         DemoClass<String> dc1 = new DemoClass<>();
    20         dc1.method("泛型类示例");
    21         DemoClass<Double> dc2 = new DemoClass<>();
    22         dc2.method(3.1415926);
    23         // ---------------------------------------
    24         String s = "泛型方法示例";
    25         ClassDemo.Method(s);
    26         ArrayList<Integer> it = new ArrayList<>();
    27         it.add(10);
    28         it.add(11);
    29         it.add(12);
    30         ClassDemo.Method(it);
    31     }
    32 }


    接口泛型

     1 //接口泛型
     2 //第一种情况,实现的时候知道具体类型。
     3 interface ModeClass<E> {
     4     public abstract void show(E e);
     5 }
     6 
     7 public class Demo implements ModeClass<String> {
     8     public static void main(String[] args) {
     9     }
    10 
    11     public void show(String s) {
    12     }
    13 }
     1 //第二程情况,实现的时候依然不知道具体类型,创建对象时才知道具体类型。
     2 //ArrayList实现List接口
     3 interface ClassDemo<E> {
     4     public abstract void method(E e);
     5 }
     6 
     7 class DemoClass<E> implements ClassDemo<E> {
     8     public void method(E e) {
     9         System.out.println(e);
    10     }
    11 }
    12 
    13 public class Demo {
    14     public static void main(String[] args) {
    15         DemoClass<String> d = new DemoClass<String>();
    16         d.method("HelloWorld");
    17     }
    18 }
  • 相关阅读:
    【建站经验】 一个成熟的大型网站系统架构演化之路
    Puppet 安装配置
    SHELL二十篇(读书笔记)
    LINUX常见小问题汇总
    shell eval命令使用
    javaweb三大框架SSH
    Java Web(八) MVC和三层架构
    在CMD中操作mysql数据库出现中文乱码解决方案
    编码与解码
    JSONP
  • 原文地址:https://www.cnblogs.com/magics/p/3633362.html
Copyright © 2011-2022 走看看