java中E,T,?的区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中E,T,?的区别?相关的知识,希望对你有一定的参考价值。

参考技术A Object跟这些标记符代表的java类型有啥区别呢? Object是所有类的根类,任何类的对象都可以设置给该Object引用变量,使用的时候可能需要类型强制转换,但是用使用了泛型T、E等这些标识符... 参考技术B Java 泛型是java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。
Java泛型中的标记符含义:
E - Element (在集合中使用,因为集合中存放的是元素)
T - Type(Java 类)
K - Key(键)
V - Value(值)
N - Number(数值类型)
? - 表示不确定的java类型
S、U、V - 2nd、3rd、4th types
遇到,,<K,V>等,是用到了java中的泛型。
一般使用来声明类型持有者名称,自定义泛型类时,类持有者名称可以使用T(Type)
如果是容器的元素可以使用E(Element),若键值匹配可以用K(Key)和V(Value)等,
若是<?>,则是默认是允许Object及其下的子类,也就是java的所有对象了。
所以说,如果是字每A,B,C,D…定义的,就是泛型,这里T只是名字上的意义而已T—type,E----Element
K----key, V----value
如果是?定义的,就是普通的Object或者其子类
举例说明:
Set 表示 集合里 是 T类的实例
List 表示 集合里 是 E类的实例
List<?> 表示 集合里的对象类型不确定,未指定
List 同 List<?> 是一样的。
参考技术C 这篇文章里,我们会看到许多跟贴切的例子,哪些项目是在 Java 的基础上完成的,哪些领域和部门在运用 Java,如何正确的在现实世界中运用 Java。 现实世界中的 Java 程序 其实现实生活中

java知识点异常Java 异常Exception e中e的getMessage()和toString()方法的区别

Exception e中e的getMessage()和toString()方法的区别:
示例代码1:
public class TestInfo
    private static String str =null;
    public static void main(String[] args)
        System.out.println("test exception");
        try
            if(str.equals("name"))
                System.out.println("test exception");
            
         catch (Exception e)
            System.out.println(e.toString());
            System.out.println(e.getMessage());
        
    

输出结果:
java.lang.NullPointerException
null

示例代码2:
public class TestInfo
       private static int m = 0;
       public static void main(String[] args)
              System.out.println("test exception");
              try
                     m = 899/0;
               catch (Exception e)
                     System.out.println(e.toString());
                     System.out.println(e.getMessage());
              
       

输出结果:
java.lang.ArithmeticException: / by zero
/ by zero


总结:由此可以看出,e.toString()获取的信息包括异常类型和异常详细消息,而e.getMessage()只是获取了异常的详细消息字符串。

以上是关于java中E,T,?的区别?的主要内容,如果未能解决你的问题,请参考以下文章

Java泛型中T和问号(通配符)的区别

java中泛型 T 与 ? 的区别

java 泛型中 TE ... 和 问号(通配符)的区别

java <T>T和T的区别

print、printf、println的区别

java知识点异常Java 异常Exception e中e的getMessage()和toString()方法的区别