关于java中封装类的详细解释

来源:互联网 发布:chart.js详细参数 编辑:程序博客网 时间:2024/06/06 12:56

为弥补基本数据类型在面向对象方面的欠缺,Java语言中引入了封装类(Wrapper Classes)——针对各种基本数据类型均提供了相应的引用数据类型。

封装类均被定义为final,因此不能被继承,一旦创建,内容不能再改变。


[java] view plain copy
  1. public class Demo1 {  
  2.   
  3.     public static void main(String[] args) {  
  4.         Byte byte1 = new Byte((byte1);  
  5.           
  6.         //NumberFormatException  
  7.         Integer i = new Integer("12");  
  8.           
  9.         System.out.println(i.toString());  
  10.         System.out.println(i.intValue());//int    
  11.           
  12.         Boolean flag = new Boolean("true");  
  13.         System.out.println(flag);  
  14.           
  15.           
  16.         //java.lang.NumberFormatException  
  17.         String s="100s";  
  18.           
  19.         //面向对象  
  20.         Double d = Double.valueOf(s);  
  21.         //基本数据类型  
  22.         double dd = Double.parseDouble(s);  
  23.     }  
  24. }  

每个包装类的构造方法都有几种重载形式,归纳如下:

所有的封装类都可以用和它对应的基本类型数据作为参数,来构造它们的实例。例如:

          Boolean bln=new Boolean(true);   Byte b=new Byte(byte 1);

除Character类以外,其他的包装类都可以以字符串为参数来构造它们的实例。例如:

      Integer I =new Integer(“123”);  Double d=new Double(“123.45D”);

当Boolean类的构造方法的参数为String类型时,如果该字符串内容为true(不考虑大小写),则该Boolean对象表示true,否则表示false。例如:

         System.out.println(newBoolean(“true”)); //打印true     System.out.println(new Boolean(“aaaa”));   //打印false

当Byte、Short、Integer、Long、Float和Double类的构造方法的参数为String类型时,字符串不能为null,并且该字符串必须可以解析为相应的基本类型的数据,否则虽编译通过,但运行时回抛出NumberFormatException运行时异常。

Java语言用封装类来把基本类型数据转换为对象。每个Java基本类型在java.lang包中都有一个相应的封装类。