java的封装
⑴ java 封装是什么
什么是封装?
在定义类的时候,如果可以直接修改类中的字段那么就可能会出现以下的情况,age可以设置成1000,score可以设置为10000
所以就引出了封装的概念,那么什么是封装呢或者说封装可以实现那些目的
封装可以隐藏实现的细节
让使用者只能通过实现写好的访问方法来访问这些字段,这样一来我们只需要在这些方法中增加逻辑控制,限制对数据的不合理访问、
方便数据检查,有利于于保护对象信息的完整性
便于修改,提高代码的可维护性
把字段(成员变量)和实现细节隐藏起来,不允许外部直接访问
把方法暴露出来,让方法控制这些成员变量进行安全的访问和操作
为了实现良好的封装,需要从两个方面考虑
因此,封装就有两个含义:把该隐藏的隐藏起来,把该暴露的暴露出来。
⑵ java封装
public class Book
{
private String title;
private int pageNum;
public static void main(String[] args)
{
Book book = new Book();
book.setTitle("Hello World");
book.setPageNum(1);
book.detail();
}
public void detail()
{
System.out.println(getTitle() + " " + getPageNum());
}
public int getPageNum()
{
return pageNum;
}
public void setPageNum(int pageNum)
{
if(pageNum > 199)
{
this.pageNum = pageNum;
}
else
{
new Exception("页数不能小于200页!").printStackTrace();
}
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title = title;
}
}
是不是这个哦 是的话 家电分哈
⑶ JAVA类的封装是什么意思
封装就是把抽象出来的JAVA类的变量和方法集成为一个集体,就像集成电路元件成为一个独立的芯片一样,它只留出对外的接口,使用者可以直接使用它,但看不到其内部是怎样实现的,JAVA类的封装就是对外而言能直接使用它来定义的对象去调用相关变量和方法
⑷ JAVA类的封装是什么意思
JAVA类的封装就是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
主要好处是:
将变化隔离。
便于使用
提高重要性。
提高安全性。
⑸ Java的封装有哪些
JAVA中常用的封装方式有以下几种:
1 、Boolean VS boolean
public final class Boolean extends Object implementsSerializable,Comparable
Boolean 类将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理 boolean时非常有用的其他一些常量和方法。
2、 Byte VS byte
public final class Byte extends Number implements Comparable
Byte类将基本类型 byte的值包装在一个对象中。一个Byte类型的对象只包含一个类型为 byte的字段。此外,该类还为 byte和 String的相互转换提供了几种方法,并提供了处理 byte时非常有用的其他一些常量和方法。
3、 Character VS char
public final class Character extends Object implements Serializable, Comparable Character类在对象中包装一个基本类型char的值。 Character类型的对象包含类型为char的单个字段。此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。
4 、Double VS double
public final class Double extends Number implements Comparable Double类在对象中包装了一个基本类型double的值。每个Double类型的对象都包含一个double类型的字段。此外,该类还提供了多个方法,可以将double转换为String,将String转换为double,还提供了其他一些处理double时有用的常量和方法。
⑹ Java中什么叫封装啊
关于这个问题,我想举一个例子:
lz如果你接触过老的面向过程的编程,
以前封装性很差的程序是这样的
比如用C写一套处理链表的程序,他的数据和函数是分开的
数据保存在一个内存区域里,所有相关的函数,比如增加节点啊,减少节点什么的都是直接操作这个内存区域的指针
比如这样
LIST *p=.....;//开辟空间
AddNode(p,...)//这样来操作
带来了很多额外的不安全因素,因为谁都可以操作这个指针
如果你写的是一个第三方库,那么别人使用的时候完全不在你的控制之下
现在的面向对象程序则不然,
将数据和与之对应的操作(也就是方法)绑定在一个块中
比如在Java中
LinkedList list=new LinkedList();
list.add(...);
这样所有的内部结构对于外部用户都是透明的,不用管内部实现和结构,如何储存数据,都不用管内部实现(一些数据程序成员的访问权限是private protected就是为了数据安全性)
而原先的方式,数据是非封装的,因为外部程序可以随便更改数据,不利于程序的安全运行
以上提到的就属于面向对象封装性的意义,不过实际的好处还不只这些
lz有问题,欢迎给我发消息,我们可以具体讨论一下
⑺ java封装类
1.基本类型只能按值传递,而每个基本类型对应的封装类是按引用传递的。
2.从性能上说java中的基本类型是在堆栈上创建的,而所有的对象类型都是在堆上创建的,(对象的引用在堆栈上创建)。比如
Integer i=new Integer(10); 其中new Integer()是在堆上创建的,而他的引用Integer i是在堆栈上。 封装类的出现,是为了更方便的使用一些基本类型不具备的方法,比如valueOf(),toString()等等。还有你如果想传递一个int对象的引用,而不是值,那只能用封装类。
在堆栈上分配内存的调用效率和在堆上分配内存的效率差太多了。虽然在堆栈上分配内存效率高,不过在堆栈上分配内存有内存泄露的问题。(这是一个平庸程序员基本解决不了的问题...)java用了一种很天才的方法提高了在堆上分配内存的效率,尽管如此,java还是慢。他不太可能达到向c++那么快,尽管他一直在承诺总有一天虚拟机会和机器码速度一样快。
⑻ Java中类的封装是如何实现的
java类中,是分四种级别的:public,private,保护,和默认级别。其中最常用的是public和private级别。java类封装,就是通过级别来控制的。private级别时,只可以类内部访问。public级别可让其他人使用。所以封住java类时,只要把你想封装的类资源写成private级别,再在类内部给它提供一个可被他人调用的public方法,这样,就实现了封装。大概就是这样吧
⑼ java 如何实现封装
封装是将对象的信息隐藏在对象内部,禁止外部程序直接访问对象内部的属性和方法。
java封装类通过三个步骤实现:
(1)修改属性的可见性,限制访问。
(2)设置属性的读取方法。
(3)在读取属性的方法中,添加对属性读取的限制。
这是我从别人那拷贝过来的