泛型

    1,设计原则或目的:只要代码在编译的时候没有错误,就不会抛异常。

     2,泛型通配符  :类型通配符一般是使用 ? 代替具体的类型实参。注意了,此处是类型实参,而不是类型形参!相当于(父类作用)List<?>

     3,类型通配符上限: 定义List<?extends Number>:表示类型只能是Number和其子类

     4,类型通配符下限;同理:List<? supper Integer>:表示类型只能是Integer和其父类

     5,并且还要注意的一点是,Java中没有所谓的泛型数组一说

异常

    异常目的:保证程序的健壮性,异常机制有:处理规则(先处理小异常在处理大异常)五个关键字:

       try:处理程序

       catch:捕获异常

       finally:在异常机制中一定会在结束前执行的,用于回收try中的物理资源,注意:如果finally使用了

          throw或return,会导致try和catch中的throws和return失效,因此不推荐在finally中使用throw或return;

       throw:在try-catch里面

       throws(方法签名,表示可能抛出的异常即在方法体上常见;public void method throws IoExecption(){}

    异常继承机制:

       Error:一般指与虚拟机相关的问题,如系统崩溃,虚拟机错误等无法恢复和不可捕获,将导致应用程序中断的错误。

   异常分类:

      1,Checked:显示性异常,认为用户自己可以处理的,用throws抛出声明和try catch方法抛出

      2,Runtime:隐式异常,只通过try-catch方法抛出

   常见的异常有详细见这里

      1,java.lang.NullPointerException(空指针异常)

      2,java.lang.ClassNotFoundException(没找到类)

      3, java.lang.NumberFormatException( 字符串转换为数字异常 )

      4,java.lang.IndexOutOfBoundsException(数组下标越界)

      5,java.lang.IllegalArgumentException(非法参数)如个数,类型等

      6,java.lang.IllegalAccessException(没有访问权限)

      7,java.lang.ArithmeticException(数学运算异常,如除0)

      8,java.lang.ClassCastException(类型转换错误)

       9, java.lang.FileNotFoundException(文件未找到异常),多是路径问题

       10, java.lang.ArrayStoreException(数组存储异常),类型不搭配

       11,java.lang.NoSuchMethodException(方法不存在异常)

       12,java.lang.InterruptedException(被中止异常,多由于时间过长等待,休眠等暂停状态)

       13,java.lang.OutOfMemoryException(内存不足)

       14,还有IOExecption,SQLExecption,SocketExecption,SecurityExecption

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

  1. Java学习之——泛型

    1.概要 generics enable types (classes and interfaces) to be parameters when defining classes, interfac ...

  2. Java学习笔记35(异常)

    代码在运行中发生的问题就是异常 java中把多种异常封装多个类,当程序出现问题时候,就会创建异常类对象并且抛出相关信息 异常体系: Throwable类是Java中所有错误或异常的父类 Throwab ...

  3. Java学习笔记26(异常)

    异常的定义: Java代码在运行过程中发生的问题就是异常 异常类:出现问题就会常见异常类对象,并抛出异常的相关信息,异常的位置,原因 异常体系: Throwable类是java中所有错误或异常的父类 ...

  4. Java学习笔记--泛型

    一个泛型类就是具有一个或者多个类型变量的类. 我们可以只关注泛型,而不会为数据存储的细节而烦恼 . java泛型(一).泛型的基本介绍和使用 http://blog.csdn.net/lonelyro ...

  5. JAVA学习之泛型

    ArrayList<E>类定义和ArrayList<Integer>类引用中涉及的术语:1.整个ArrayList<E>称为泛型类型 2.ArrayList< ...

  6. 5 Java学习之 泛型

    1. 基本概念          泛型是Java SE 1.5的新特性,泛型的本质是 参数化类型 ,也就是说所操作的 数据类型 被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为 ...

  7. Java学习笔记——泛型

    假定T不仅要指定接口的类继承.使用下面的方式: public class some<T extends Iterable<T> & Comparable<T>&g ...

  8. Thinking in Java学习笔记-泛型和类型安全的容器

    示例: public class Apple { private static long counter; private final long id = counter++; public long ...

  9. Java学习点滴——泛型

    基于<Java编程思想>第四版 前言 虽然Java的泛型在语法上和C++相比是类似的,但在实现上两者是全然不同的. 语法 Java只需要一个<>就可定义泛型.在<> ...

随机推荐

  1. BZOJ4031 [HEOI2015]小Z的房间 【矩阵树定理 + 高斯消元】

    题目链接 BZOJ4031 题解 第一眼:这不裸的矩阵树定理么 第二眼:这个模\(10^9\)是什么鬼嘛QAQ 想尝试递归求行列式,发现这是\(O(n!)\)的.. 想上高斯消元,却又处理不了逆元这个 ...

  2. codeforces ~ 1009 B Minimum Ternary String(超级恶心的思维题

    http://codeforces.com/problemset/problem/1009/B B. Minimum Ternary String time limit per test 1 seco ...

  3. 浅谈_IDEA导入Eclipse的Web项目

    相信很多同学在工作中都会遇到将一个Eclipse的Web项目导入IDEA的情景,这里浅谈一下具体的操作流程 一:Import Project,选择要导入的项目 二:选择以Eclipse模型的方式导入 ...

  4. poj 1061 青蛙的约会 (扩展欧几里得模板)

    青蛙的约会 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Status ...

  5. OpenCV 2.4.9 学习笔记(1)—— 基本功能结构

    一些关于OpenCV(2.4.9版本)的学习笔记,作为记录,以免自己忘了. 安装与配置 OpenCV的下载.安装以及在各个平台(Windows/Linux等)配置网上有很多的资料,自己就不用存了.需要 ...

  6. NOIP2011提高组

    D1T1.铺地毯 for循环 #include<iostream> #include<cstdio> #include<algorithm> using names ...

  7. Linux虚拟地址空间布局以及进程栈和线程栈总结

    原文链接:http://blog.csdn.net/freeelinux/article/details/53782986[侵删] 本文转自多个博客,以及最后有我的总结.我没有单独从头到尾写一个总结的 ...

  8. Kubernetes DNS安装配置

    #镜像在谷歌上需要FQ###################################下载kubernetes#DNS#cd kubernetes/cluster/addons/dns#修改tr ...

  9. Hbase delete遇到的常见异常: Exception in thread "main" java.lang.UnsupportedOperationException

    hbase 执行批量删除时出现错误: Exception in thread "main" java.lang.UnsupportedOperationException at j ...

  10. centos7使用tomcat部署javaweb项目

    1.下载二进制安装包 tomcat下载地址 2.下载jdk和配置环境变量 这里就不再多描述不清楚,可以       参考 我的yum安装的jdk 3.在centos7下安装 tomcat #切换到/u ...