欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java学习第十天

程序员文章站 2022-06-20 23:10:31
1:包装类: byte Byte short Short int nteger long Long char Character boolean Boolean double Double float Float 2.基本类型转成字符串类型 String.valueOf() String ss =I ......

1:包装类:
  byte      byte
  short     short
  int       nteger
  long       long
  char       character
  boolean    boolean
  double      double
  float       float

2.基本类型转成字符串类型
  string.valueof()
  string ss =integer.tostring(7)
  string str=double.tostring(6.6)

3字符串类型转成基本类型:常用
  int a = integer.parseint("88");
  double d=double.parsedouble("99.99");

4.十进制转成其它进制

  string num = integer.tohexstring(60);
  string n =integer.tooctalstring(24);
  string m = integer.tobinarystring(6);

5.其它进制转十进制
  int x = integer.parseint("3c",16); //第一个参数是被转的数,第二个参数说明第一个参数的进制
  int x = integer.parseint("30",8);
  int x = integer.parseint("110",2);


6: 装箱和拆箱
  

 1 integer tt=6;// new integer(6) ---自动装箱
 2   tt=tt+2;// tt.intvalue()---6 自动拆箱 6+2==8 new integer(8) 自动装箱
 3 
 4 
 5   integer m=127;
 6   integer n=127;
 7 
 8   sop(m==n);//true jdb1.5开始
 9 
10   m=128;
11   n=128;
12 
13   sop(m==n);//false
14   //如果一个数在byte的范围之内(-128---127),之前已经定义过,再定义时使用已经定义的

7:异常:程序在运行过程中出现的特殊情况,
  java把程序在运行时出现的不正常情况,提取属性和行为描述(异常名称,异常发生的位置,异常具体信息)
  从而出现了异常,从而实现了异常的面向对象

8.异常体系: (继承object类)throwable
        (throwable的子类)--| error:严重的错误,没办法处理的
        (throwable的子类)--| exception:异常,程序运行时可处理的问题
9.异常特点:具备可抛性

  默认的异常处理方式:系统创建异常类对象,因为main方法不能处理异常,抛给了jvm,jvm调用异常类对象的printstacktrace()方法,
  输出异常名,异常信息,异常发生的位置,然后程序中断

  try{

  }catch(exception e){
  }

  throws声明可能会出现的异常
  必须处理:1:使用 try{}catch(){} 2:使用throws继续声明抛出

10.多重异常:

1 try{
2 
3 }catch(xxx e){
4 
5 }catch(yyy ee){
6 
7 }

  子类异常要写在父类异常的上边

11.自定义异常:

1 class myexception extends exception{
2 
3 myexception(){}
4 
5 myexception(string message)
6 {
7 super(message);
8 }
9 }

 

  对于自定义异常,系统不会自动创建异常类对象,所以需要使用throw 手动创建异常类对象

12.throw:用于手动抛出异常类对象
  用了throw,必须处理,处理方式有2种:
    1.使用try{}catch{}
    2:使用throws继续声明抛出

13.throw和throws对比:
  1.throw用在方法内部,throws用在方法后边
  2.throw后边是异常类对象,throws后边是异常类

14.java把异常分为两类:
  非运行时异常:编译时检测的异常,必须接收处理
  运行时异常:编译时不检测的异常-------runtimeexception及其子类,编译不检测,即使使用了throws或throw,不处理,编译照样通过
      原因:java认为出现运行时异常,程序就该中断,不该处理
         运行时异常都是因为数据传送出错造成的,程序就该中断,修改错误数据,然后再执行

 

 1 例子:
 2 class mymath
 3 {
 4   public int div(int a,int b)
 5   {
 6     return a/b;// throw new arithmeticexception()
 7   }
 8 }
 9 class demo5 
10 {
11   public static void main(string[] args) //不用try{}catch(){} 可以,只不过是程序异常时会中断
12   {
13     mymath mymath=new mymath();
14     //检测异常
15     try
16     {
17       int m = mymath.div(5,0); //new arithmeticexception()
18       system.out.println(m); //不执行
19 
20     }catch(exception e)//捕获 exception e=new arithmeticexception() 多态
21     {
22       system.out.println(e.getmessage());//异常信息
23       system.out.println(e.tostring());//异常类名:异常信息
24       e.printstacktrace(); //异常类名:异常信息 异常发生的位置
25 
26       system.out.println("除数为0了");
27     }
28     system.out.println("hehe")    
29   }
30 }

 

  注意:对于程序来说,最好把问题提前到编译时期,也就是说运行时可能发生的异常,在编译时期就能知道

15.finally中的代码在return之前执行的

 1 system.exit()退出jvm虚拟机,finally中的代码不能执行
 2 
 3 try{}catch(){}
 4 
 5 try{}catch(){}finally{}
 6 
 7 try{}finally{必须执行的语句}
 8 
 9 特殊情况:
10 class mymath
11 {
12   public int div(int a,int b)
13   {
14   return a/b;
15   }
16 }
17 class demo11 
18 {
19   public static void main(string[] args)
20   {
21     mymath mymath=new mymath();
22 
23   try{
24 
25     int m = mymath.div(5,0); 
26     system.out.println(m);
27 
28   }catch(exception e)
29   {
30     system.out.println(e.getmessage());
31     //return;
32     system.exit(1);//退出jvm finally中的代码不能执行
33   }finally
34   {
35     system.out.println("哈哈");//finally中的代码在return之前执行
36   }
37   }
38 }