1. java中处理错误情况有两种,1  Error,2  Exception

error是无法处理的,Exception是可以处理的情况。

Exception中又有两种情况,RuntimeException和编译时异常。

1)如果异常是运行时异常,则可以声明抛出异常,也可以不声明。可以处理异常,也可以不处理异常。

2)如果异常是编译异常,则必须声明抛出异常,也必须处理异常。

2. 集合类HashSet,如果添加元素,1)会先看他的hashCode是否相同,如果相同  2)则调用equals方法,看是否相等,如果还相等则认为是相同元素。不再添加。

  TreeSet内部是一颗红黑树,所以是有顺序的。添加的元素如果不具有自然顺序,则需要实现Comparable接口。

3. 在泛型中没有多态的概念,左右两边必须一致,可以一边不写。

  比如:ArrayList<String> names = new ArrayList<String>();  ArrayList  names = new ArrayList<String>();  ArrayList<String> names = new ArrayList();都是可以的。而ArrayList<Object> names = new ArrayList<String>();  或ArrayList<String> names = new ArrayList<Object>();都是不合法的。

4。 泛型

  可以理解为数据类型的占位符,或数据类型的变量。

  泛型方法,定义格式:访问修饰符  泛型变量声明  返回类型  函数名(参数列表。。。)。泛型类型的确定时间是实参传递进来时。

  比如:public static <T> T add(T t)

  泛型类

  定义格式:class MyClass<T>{...},泛型类型的确定时间是实现接口时,可以指定接口中声明的泛型类型,也可以延迟到创建对象时指定泛型类型,此时需要接着声明泛型<T>。

  泛型接口定义格式

  interface MyInterface<T>{...}

  如果想在创建接口实现类时指定自定义泛型数据类型,数据定义格式

  class MyClass<T> implements MyInterface<T>{...}。

  注意:接口中声明的自定义泛型,仅可以用在接口中声明的函数。类中声明的自定义泛型,仅可以用在类的函数中。

5. IO流

  注意转换流的两个作用,1)将字节流转换成字符流InputStreamReader,或者将字符流转换成字节流OutputStreamWriter。2)指定字符编码格式。

6。 内省

  当需要通过字符串来设置对象的属性时,可以使用apatch 提供的包commons-beanutils里面的setProperty方法,方便设置对象的属性,使用的前提条件是类已经将各个属性的setter和getter设置好。

java中异常和集合的更多相关文章

  1. 【集合】Java中的具体集合(一)

    Java中不止提供了集合框架中的接口,还提供了许多具体的实现. Java中的具体集合 集合类型 描述 ArrayList 一种可以动态增长和缩减的索引序列 LinkedList 一种可以在任何位置进行 ...

  2. Java中的List集合和迭代器

    一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是 ...

  3. java中 列表,集合,数组之间的转换

    java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...

  4. Java中如何克隆集合——ArrayList和HashSet深拷贝

    编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法.需要记住的是,Java集合的拷贝构造函数只提供浅拷贝而不是深拷贝,这意味 ...

  5. 《java中异常和错误》

    异常和错误的区别. 异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发 ...

  6. java中数组、集合、字符串之间的转换,以及用加强for循环遍历

    java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...

  7. JAVA中所有与集合有关的实现类都是这六个接口的实现类

    JAVA中所有与集合有关的实现类都是这六个接口的实现类. Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构. List接口代表按照元素一定的相关顺序来组 ...

  8. 浅谈java中异常抛出后代码是否会继续执行

    问题 今天遇到一个问题,在下面的代码中,当抛出运行时异常后,后面的代码还会执行吗,是否需要在异常后面加上return语句呢? public void add(int index, E element) ...

  9. java中异常的抛出:throw throws

    java中异常的抛出:throw throws Java中的异常抛出 语法: public class ExceptionTest{ public void 方法名(参数列表) throws 异常列表 ...

随机推荐

  1. (链表)反转链表Reverse List

    逆转链表是简单而又简单的链表问题,其问题的方法之一可以设置三个指针,一个指向当前结点,一个指向前驱结点,一个指向后继指针 代码如下: class Solution { public: ListNode ...

  2. 【ACM】杭电ACM题一直WA求高手看看代码

    数据测试了好几个都没问题,可以就是WA不让过,检测了2个小时还是没发现有什么问题T_T!!求高手看看代码,小弟在此谢谢各位哦! #include <stdio.h> #include &l ...

  3. ASP.NET伪静态

    http://www.duote.com/tech/5/14543.html 三.伪静态的坏处 当然犹如一篇文章的作者所说的:"如果流量稍大一些使用伪静态就出现CPU使用超负荷,我的同时在线 ...

  4. linux 文件查找,which,whereis,locate,find

    linux 文件查找,which,whereis,locate,find 一:which 主要用于查找可执行命令的所在位置: 如图,查找命令 ls的目录: 二:whereis 主要用于查找命令的帮助文 ...

  5. HTTP请求响应码

    ① 客户方错误 100 继续 101 交换协议 ② 成功 200 OK 201 已创建 202 接收 203 非认证信息 204 无内容 205 重置内容 206 部分内容 ③ 重定向 300 多路选 ...

  6. Openerp 7 view画面编辑/创建/删除/复制功能控制

    OpenERP 7.0中,Tree或Form画面上可以添加属性create edit delete,用于控制Create.Delete.Edit.Duplicate功能是否显现.如下例:<for ...

  7. CSS3实现两行或三行文字,然后多出的部分省略号代替

    概述 -webkit-line-clamp 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中.限制在一个块元素显示的文本的行数. 为了实 ...

  8. 线代: N阶行列式

    线性变换 将 (x, y) 变成 (2 x + y, x - 3 y) 就叫做线性变换, 这就是矩阵乘法, 用于表示一切线性变换. 几何上看, 把平面上的每个点 (x, y) 都变到 (2 x + y ...

  9. linux 文件操作库函数

    fopen :打开文件 fread :读文件 fwrite : 写文件 fgetc : 读字符 fputc : 写字符 fscanf : 格式化读 fprintf : 格式化写 fseek : 文件偏 ...

  10. bootstrap之UpdateStrings

    UpdateStrings package io.appium.android.bootstrap.handler; import io.appium.android.bootstrap.Androi ...