Java学习之泛型和异常】的更多相关文章

泛型 1,设计原则或目的:只要代码在编译的时候没有错误,就不会抛异常.  2,泛型通配符  :类型通配符一般是使用 ? 代替具体的类型实参.注意了,此处是类型实参,而不是类型形参!相当于(父类作用)List<?> 3,类型通配符上限: 定义List<?extends Number>:表示类型只能是Number和其子类 4,类型通配符下限:同理:List<? supper Integer>:表示类型只能是Integer和其父类 5,并且还要注意的一点是,Java中没有所谓…
1.概要 generics enable types (classes and interfaces) to be parameters when defining classes, interfaces and methods. 泛型能在定义类,接口和方法时将类型(类和接口)作为参数.和方法声明时的形式参数很类似,都是为了在不同的输入时重用相同的代码.不同的是 形式参数输入的是值而泛型是类型. 2.为什么使用泛型 1.编译时更加强的(Stronger)类型检测 java编译器对泛型代码进行强类…
代码在运行中发生的问题就是异常 java中把多种异常封装多个类,当程序出现问题时候,就会创建异常类对象并且抛出相关信息 异常体系: Throwable类是Java中所有错误或异常的父类 Throwable的子类Error类是所有错误的父类 Throwable的另一个子类Exception类是所有异常的父类 在开发中,相对来说,我们并不关心错误,而更关心异常 异常和错误的区别(通俗解释): 异常:相当于一个人感冒了,吃药睡觉等进行相应的操作即可痊愈,不修改代码处理掉异常,程序还可以执行 错误:相当…
异常的定义: Java代码在运行过程中发生的问题就是异常 异常类:出现问题就会常见异常类对象,并抛出异常的相关信息,异常的位置,原因 异常体系: Throwable类是java中所有错误或异常的父类 Throwable类的子类Error类是所有错误的的父类 Throwable类的子类Exception类是所有异常的父类 在开发中,更关心异常而不关心错误 异常和错误的区别: 异常可以通过开发人员修改代码来处理,让程序继续执行,异常可以被解决,而错误是无法被解决的,也不需要程序员来处理 示例: pa…
一个泛型类就是具有一个或者多个类型变量的类. 我们可以只关注泛型,而不会为数据存储的细节而烦恼 . java泛型(一).泛型的基本介绍和使用 http://blog.csdn.net/lonelyroamer/article/details/7864531 泛型的内部原理:类型擦除以及类型擦除带来的问题 http://blog.csdn.net/lonelyroamer/article/details/7868820 java泛型(三).通配符的使用 http://blog.csdn.net/l…
ArrayList<E>类定义和ArrayList<Integer>类引用中涉及的术语:1.整个ArrayList<E>称为泛型类型 2.ArrayList<E>中E称为类型变量或类型参数 3.整个ArrayList<Integer>称为参数化的类型 4.ArrayList<Integer>中的Integer叫类型参数的实例或实际类型参数 5.ArrayList<Integer>中的<>念typeof6.Arr…
1. 基本概念          泛型是Java SE 1.5的新特性,泛型的本质是 参数化类型 ,也就是说所操作的 数据类型 被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为 泛型类 .泛型接口.泛型方法.     好处: 泛型的主要目标是提高 Java 程序的类型安全. 消除强制类型转换. 2. 示例 2.1 普通泛型 Java代码  class Point<T>{       // 此处可以随便写标识符号,T是type的简称 private T var ; // v…
假定T不仅要指定接口的类继承.使用下面的方式: public class some<T extends Iterable<T> & Comparable<T>>{} Java的泛型不具有共变性(假设B是A的子类,而Node<B>可视为一种Node<A>,则称Node具有共变性),只是能够使用类型通配字符? 与extends来声明变量.使达到类似的共变性. Node<Apple> apple = new Node<>…
示例: public class Apple { private static long counter; private final long id = counter++; public long id(){ return id; } } public class Orange { } public class ApplesAndOrangesWithoutGenerics { @SuppressWarnings({ "rawtypes", "unchecked"…
基于<Java编程思想>第四版 前言 虽然Java的泛型在语法上和C++相比是类似的,但在实现上两者是全然不同的. 语法 Java只需要一个<>就可定义泛型.在<>中可以使用任意符合Java语法要求的字符作为类型的标识,可以定义泛型类.泛型接口.泛型方法等. class A<T>{ T a; public <Q> void foo(Q a){ } } interface B<T>{ void foo(T a); } 实现 Java的泛…