实验十五Java异常与常用工具类编程_第1页
实验十五Java异常与常用工具类编程_第2页
实验十五Java异常与常用工具类编程_第3页
实验十五Java异常与常用工具类编程_第4页
实验十五Java异常与常用工具类编程_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验十五 Java异常与常用工具类编程§15.1实验指导1、异常处理1)常见异常程序在运行期间出现异常,如数据库不能连接,数组越界,IO异常,被零除算术异常等. ArrayIndexOutOfBoundsException IOException ArithmeticException NullPointerException 未实例化异常 。2)处理异常 try ./正常需要执行代码,可能会出现异常 catch(Exception ex) ./出现异常,异常处理代码 3)finally try . catch(Exception ex) . finally ./*无论是否发生异常,

2、是否捕获到异常,都会执行的代码*/ 4)throws 声明异常 public void fun() throws Exception ./函数fun()可能发生异常,该函数并未处理异常try.catch. /由函数的调用者处理该异常. 示例1 public static String fun() throws Exception BufferedReader buf=new BufferedReader(new InputStreamReader(System.in); return buf.readLine(); public static void main(String args) tr

3、y String s=fun(); catch (Exception e) e.printStackTrace(); 5)throw 抛出异常 用户自定义异常 class CircleException extends Exception private String msg; public CircleException() public CircleException(String msg) this.msg=msg; public String toString() return msg; class Circle public double area(double r) throws

4、CircleException if(r<0) throw new CircleException("圆半径不能小于0"); else return Math.PI*r*r; public static void main(String args) try Circle cir=new Circle(); System.out.println(cir.area(-12); catch (CircleException e) System.out.println(e); 2、String类使用String 类表示字符串。 在 Java 程序中所有的字符串常量,如 &qu

5、ot;abc",都被实现为这个类的实例。 1)、构造函数 String s1="java" String s2=new String("java"); 2)、比较函数 =比较引用是否相同 if(s1=s2) /返回falseequals():比较串内容是否相同 if(s1.equals(s2)/返回true compareTo():比较内容,返回数字 pareTo(s2) 如果s1>s2 则返回>0 如果s1=s2 则返回0 如果s1<s2 则返回<0 3)、取子串substring(),取字符charAt(index)

6、 String s1="hello java" s1.substring(start,end); s1.substring(0,3);/start到end-1 String s2=s1.substring(6,10); 4)、分割split(); String s1="c+,java," String str=s1.split(","); String s2="c+.java.vb" String s2="c+.java.vb dotnet" String str=s2.split("

7、.| "); for(int i=0;i<str.length;i+) System.out.println(stri);2、StringBuffer类StringBuffer public StringBuffer()构造一个不包含字符的字符串缓冲区,其初始的容量设为 16 个字符。 StringBuffer public StringBuffer(int length):构造一个不包含字符的字符串缓冲区,其初始的容量由参数 length 设置。 StringBuffer public StringBuffer(String str):构造一个字符串缓冲区,来表示和字符串参数

8、相同的字符序列。 length public int length():返回字符串缓冲区的长度 (字符数)。 capacity public int capacity():返回字符串缓冲区的当前容量。 该容量表示可用于插入新的字符的存储空间;超出该容量时会发生新的容量分配。 ensureCapacity public synchronized void ensureCapacity(int minimumCapacity):保证缓冲区的容量至少等于指定的最小数。 如果字符串缓冲区的当前容量少于该参数,则分配一个新的更大的内部缓冲区。 新容量将取如下参数中较大的一个: setLength pub

9、lic synchronized void setLength(int newLength):设置该字符串缓冲区的长度。 如果参数 newLength 小于该字符串缓冲区的当前长度。 该字符串缓冲区将被截断来包含恰好等于由参数 newLength 给出的字符数。 append public synchronized StringBuffer append(Object obj):把 Object 型参数的字符串表示添加到该字符串缓冲区。 StringBuffer x = new StringBuffer().append("a").append(4).append(&quo

10、t;c") .toString();insert public synchronized StringBuffer insert(int offset, Object obj):把 Object 型参数的字符串表示插入到字符串缓冲区。 reverse public synchronized StringBuffer reverse():该字符串缓冲区的字符序列被其反向字符序列所替换。 toString public String toString():转换为一个表示该字符串缓冲区数据的字符串。 分配一个新的 String 对象,并且用字符串缓冲区所表示的字符序列进行初始化。 于是此

11、String 被返回。 随后缓冲区发生的变化不再影响该 String 的内容。 3、日期类示例1)获取服务器端当前日期: import ; Date myDate = new Date();2) 获取当前年、月、日:Date myDate = new Date();int thisYear = myDate.getYear() + 1900;/thisYear = 2009int thisMonth = myDate.getMonth() + 1;/thisMonth = 10int thisDate = myDate.getDate();/thisDate = 303)按本地时区输出当前日期

12、Date myDate = new Date();out.println(myDate.toLocaleString();输出结果为:2003-5-30 4)按照指定格式打印日期import ;import ;Date dNow = new Date();SimpleDateFormat formatter =new SimpleDateFormat("E yyyy.MM.dd 'at' hh:mm:ss a zzz");System.out.println("It is " + formatter.format(dNow); 

13、输出的结果为:It is 星期五 2003.05.30 at 11:30:46 上午 CST 5) 计算日期之间的间隔 getTime()函数返回日期与1900-01-01 00:00:00相差的毫秒数Import ;import ;String input = "2003-05-01"SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");Date d1 = null;Date d2 = new Date();long diff = d2.getTime() - d1.getTime();out.println("Difference is " + (diff/(1000*60*60*24) + " days.");输出结果为:Difference is 29 days. §15.2实验题目1、用Java 异常处理机制实现一个处理数组索引是否越界程序2、输入两个数据,控制台显示两个数的商。当除数number2为0时,捕获异常,并在控制台上打印异常信息。3、使用类String类的分割s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论