Java中类的封装是如何实现的?

Python016

Java中类的封装是如何实现的?,第1张

封装是将对象的信息隐藏在对象内部,禁止外部程序直接访问对象内部的属性和方法。\x0d\x0ajava封装类通过三个步骤实现:\x0d\x0a\x0d\x0a(1)修改属性的可见性,限制访问。\x0d\x0a(2)设置属性的读取方法。\x0d\x0a(3)在读取属性的方法中,添加对属性读取的限制。

Java的封装类型和原始类型的区别如下:\x0d\x0a1、基本类型,或者叫做内置类型,是JAVA中不同于类的特殊类型。\x0d\x0aJava中的简单类型从概念上分为四种:实数、整数、字符、布尔值。但是有一点需要说明的是,Java里面只有八种原始类型,其列表如下:\x0d\x0a实数:double、float\x0d\x0a整数:byte、short、int、long\x0d\x0a字符:char\x0d\x0a布尔值:boolean\x0d\x0a2、封装类型就是java面向对象引入的数据类型,里面定义了一些常用的方法,是用new分配到堆内存上的。引入封装类型的主要目的是因为类能够提供必要的方法,用于实现基本数据类型的数值与可打印字符串之间的转换,以及一些其他的实用程序方法。Java为每个原始类型提供了封装类。\x0d\x0a1 、Boolean VS boolean\x0d\x0apublic final class Boolean extends Object implementsSerializable,Comparable\x0d\x0aBoolean 类将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理 boolean时非常有用的其他一些常量和方法。\x0d\x0a2、 Byte VS byte\x0d\x0apublic final class Byte extends Number implements Comparable Byte类将基本类型 byte的值包装在一个对象中。一个Byte类型的对象只包含一个类型为 byte的字段。此外,该类还为 byte和 String的相互转换提供了几种方法,并提供了处理 byte时非常有用的其他一些常量和方法。\x0d\x0a3、 Character VS char\x0d\x0apublic final class Character extends Object implements Serializable, Comparable\x0d\x0aCharacter类在对象中包装一个基本类型char的值。\x0d\x0aCharacter类型的对象包含类型为char的单个字段。此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。\x0d\x0a4 、Double VS double\x0d\x0apublic final class Double extends Number implements Comparable Double类在对象中包装了一个基本类型double的值。每个Double类型的对象都包含一个double类型的字段。此外,该类还提供了多个方法,可以将double转换为String,将String转换为double,还提供了其他一些处理double时有用的常量和方法。\x0d\x0a5、 Float VS float\x0d\x0apublic final class Float extends Number implements Comparable\x0d\x0aFloat类在对象中包装了一个float基本类型的值。Float类型的对象包含一个float类型的字段。此外,此类提供了几种方法,可在float类型和String类型之间互相转换,并且还提供了处理float类型时非常有用的其他一些常量和方法。\x0d\x0a6、 Integer VS int\x0d\x0apublic final class Integer extends Number implements Comparable\x0d\x0aInteger类在对象中包装了一个基本类型int的值。Integer类型的对象包含一个int类型的字段。\x0d\x0a此外,该类提供了多个方法,能在int类型和String类型之间互相转换,还提供了处理int类型时非常有用的其他一些常量和方法。\x0d\x0a7 Long VS long\x0d\x0a\x0d\x0apublic final class Long extends Number implements Comparable\x0d\x0aLong类在对象中封装了基本类型long的值。每个Long类型的对象都包含一个long类型的字段。\x0d\x0a此外,该类提供了多个方法,可以将long转换为String,将String转换为long,除此之外,还提供了其他一些处理long时有用的常量和方法。\x0d\x0a8、 Short VS short\x0d\x0apublic final class Short extends Number implements Comparable\x0d\x0aShort类在对象中包装基本类型short的值。一个Short类型的对象只包含一个short类型的字段。另外,该类提供了多个方法,可以将short转换为String,将String转换为short,同时还提供了其他一些处理short时有用的常量和方法。\x0d\x0a9、public final class Voidextends Object\x0d\x0aVoid 类是一个不可实例化的占位符类,它保持一个对代表 Java 关键字 void 的 Class 对象的引用。\x0d\x0a类的对象才能为null,不能把null赋值给一个变量不能,如int m=null但可以String s=null因为String是个类。

java中的封装类是基本类型的封装成对象。

使用方法:

package wrapper

public class IntegerTest1 {

public static void main(String[] args)

{

Integer i=new Integer(123)

byte b=i.byteValue()

double d=i.doubleValue()

System.out.println("将Integer封装类转换为 byte值为:"+b)

System.out.println("将Integer封装类转换为 double值为:"+d)

String s1=Integer.toBinaryString(i)

String s2=Integer.toOctalString(i)

String s3=Integer.toHexString(i)

System.out.println("转换为二进制的值为:"+s1)

System.out.println("转换为八进制的值为:"+s2)

System.out.println("转换为十六进制的值为:"+s3)

}

}