java中异常和集合
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中异常和集合的更多相关文章
- 【集合】Java中的具体集合(一)
Java中不止提供了集合框架中的接口,还提供了许多具体的实现. Java中的具体集合 集合类型 描述 ArrayList 一种可以动态增长和缩减的索引序列 LinkedList 一种可以在任何位置进行 ...
- Java中的List集合和迭代器
一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是 ...
- java中 列表,集合,数组之间的转换
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...
- Java中如何克隆集合——ArrayList和HashSet深拷贝
编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法.需要记住的是,Java集合的拷贝构造函数只提供浅拷贝而不是深拷贝,这意味 ...
- 《java中异常和错误》
异常和错误的区别. 异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发 ...
- java中数组、集合、字符串之间的转换,以及用加强for循环遍历
java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...
- JAVA中所有与集合有关的实现类都是这六个接口的实现类
JAVA中所有与集合有关的实现类都是这六个接口的实现类. Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构. List接口代表按照元素一定的相关顺序来组 ...
- 浅谈java中异常抛出后代码是否会继续执行
问题 今天遇到一个问题,在下面的代码中,当抛出运行时异常后,后面的代码还会执行吗,是否需要在异常后面加上return语句呢? public void add(int index, E element) ...
- java中异常的抛出:throw throws
java中异常的抛出:throw throws Java中的异常抛出 语法: public class ExceptionTest{ public void 方法名(参数列表) throws 异常列表 ...
随机推荐
- CentOS 7上安装WordPress详细步骤
一.搭建Wordpress服务器环境需求: php 5.2.4 或者更高版本.MySQL 5.0 或者更高版本. 二.搭建Wordpress平台:以下以Wordpress3.92版本为例进行说明,如果 ...
- SIT/UAT测试
SIT/UAT测试 学习了:https://blog.csdn.net/just_tigris/article/details/52441823 https://baike.baidu.com/ite ...
- 如何将DB2的数据库转换到mySQL中?
经过几次尝试最终找到解决的办法,因为网上并没有详细说明,所以下面我将详细的步骤记录如下: 1. 大前提是你已经安装好DB2服务器和mySQL服务器,现在只是借用Navicat for MySQL这个软 ...
- 【Hibernate】Hibernate3.x独立执行时的Failed to load class "org.slf4j.impl.StaticLoggerBinder"错误
按理说,假设Hibernate不依附于SSH执行,像<[Struts2+Hibernate3+Spring3]利用SSH整合,完毕打印用户表,用户登录.注冊.改动password系统>(点 ...
- 记dynamic的一个小坑 -- RuntimeBinderException:“object”未包括“xxx”的定义
创建一个控制台程序和一个类库, 在控制台创建一个匿名对象.然后再在类库中訪问它.代码例如以下: namespace ConsoleApplication1 { class Program { stat ...
- CAD批量合并文件
要求:将整饰完成504幅单独的宗地图合并成一张总图,合并后,去掉其他要素,只保留毕合的权属线. 解决: 1.合并dwg文件,除了手工粘贴复制外,最先想到的是插入块,即用Insert命令插入,测试结果可 ...
- wepy - 与原生有什么不同(slot插槽)
wepy官方文档是这样介绍的 简单描述就是: index.wpy:子组件 panel.wpy:父组件 1.slot是内容分发的占位符 2.slot父组件在子组件使用时,名称必须一致 3.slot子组件 ...
- 算法笔记_194:历届试题 翻硬币(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 小明正在玩一个“翻硬币”的游戏. 桌上放着排成一排的若干硬币.我们用 * 表示正面,用 o 表示反面(是小写字母,不是零). 比如,可能情 ...
- vue 源码 断点调试
1.添加sourceMap sourceMap: true 2.npm run dev 会生成vue.js.map 3.断点调试 <!DOCTYPE html> <html> ...
- ci高级使用方法篇之连接多个数据库
在我们的项目中有时可能须要连接不止一个数据库.在ci中怎样实现呢? 我们在本地新建了两个数据库,例如以下截图所看到的: 改动配置文件database.php文件为例如以下格式(读者依据自己数据库的情况 ...