java 中的封装介绍及使用方法

在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。
封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。
要访问该类的代码和数据,必须通过严格的接口控制。
封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。
适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。
封装的优点
1. 良好的封装能够减少耦合。
2. 类内部的结构可以自由修改。
3. 可以对成员变量进行更精确的控制。
4. 隐藏信息,实现细节。
1、什么是封装?
封装就是将属性私有化,提供公有的方法访问私有属性。
做法就是:修改属性的可见性来限制对属性的访问,并为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问。
如:
private String name;
public String getName(){
return;
}
public void setName(String name){
this.name=name;
}
2、 为什么需要封装?
通过封装,可以实现对属性的数据访问限制,同时增加了程序的可维护性。
由于取值方法和赋值方法隐藏了实现的变更,因此并不会影响读取或修改该属性的类,避免了大规模的修改,程序的可维护性增强。
3、 this关键字是什么意思?
有时一个方法需要引用调用它的对象。为此,Java定义了this这个关键字。简单地说,
This是在对象内部指代自身的引用。可以直接引用对象,可以解决实例变量和局部变量之间发生的任何同名的冲突。
4、 如何实现封装,实现封装的具体方法?
(1)、修改属性的可见性来限制对属性的访问。
(2)、为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。
(3)、在赋值和取值方法中,加入对属性的存取的限制。
5、什么是构造方法?构造方法的语法规则?
构造方法负责对象成员的初始化工作,为实例变量赋予合适的初始值。
构造方法的语法规则:方法名与类名相同。没有返回类型。
使用new关键字实例化对象的过程实际上就是调用构造方法的过程。或者说实例化一个对象实际上就是去调用这个对象的构造方法。
Xin xin=new Xin();
在实例化对象的时候,已经实例变量赋予了初始值,完成了对象的初始化工作。
6、 为什么需要构造方法?
为属性赋值时,很容易忘记对其中的一项或多项进行赋值。构造方法可以简化对象初始化,为实例变量赋值。
7、 带参数的构造方法:
可以显示地为实例变量赋予初始值。在不同的条件下创建不同的对象,这些对象的实例变量具有不同的值。
注意:在使用带参数的构造方法实例化对象时,传递的值和构造方法的参数应当在个数、次序和数据类型上相互配备。
通过调用带参数的构造方法,在创建对象时,一并完成了对象的初始化工作,简化了对象初始化的代码。
8、 什么是方法重载?
方法名称相同,参数项不相同。那么认为一个方法是另一个方法的重载方法。
注意:重载只跟参数有关,与返回类型无关。方法名和参数相同而返回类型不相同,不能说是重载。
典型的方法重载:System.out.println(); Sysstem.out代表了一个java.io.PrintSteam对象,具有多个println(打印)方法,该方法可
以接收不同类型的数据作为参数根据类型不同,
调用不同的打印方法。
在java.lang包中的Math类中的max方法。
Public static int max(int a,intb); Public static int max(long a,long b); Public static int max(float a,float b); Public static int max(double a,double b);
在调用方法之前,java虚拟机先判断给定的类型,然后决定到底调用执行那个max()方法。
9、 什么是构造方法重载?
构造方法重载是方法重载的一个典型的特例。参数列表不同。
可以通过重载构造方法来表达对象的各种多种初始化行为。也就是说在通过new语句创建一个对象时,可以实现在不同的条件下,让不同的对象具有不同的初始化行为。
Private String name;
Private String sex;
Public Xin(String name){
this.name=name;
}
Public Xin(String name,String sex){
this.name=name;
this.sex=sex;
}
以上就是java中封装的详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# java
# 封装
# 封装的详解
# 封装使用方法
# Java基础教程之封装与接口
# 详解JAVA的封装
# java中封装的实现方法详解
# Java数据封装树形结构代码实例
# java语言中封装类代码示例
# 一文让你彻底弄懂Java封装(超详细)
# 可以实现
# 自己的
# 是一个
# 完成了
# 是在
# 见性
# 地说
# 多个
# 如有
# 是指
# 很容易
# 可以通过
# 希望能
# 可以直接
# 英语
# 多项
# 最主要
# 或者说
# 谢谢大家
# 更容易
相关文章:
盘锦网站制作公司,盘锦大洼有多少5G网站?
如何在Windows 2008云服务器安全搭建网站?
网站图片在线制作软件,怎么在图片上做链接?
如何在建站主机中优化服务器配置?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
七夕网站制作视频,七夕大促活动怎么报名?
C#如何使用XPathNavigator高效查询XML
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
非常酷的网站设计制作软件,酷培ai教育官方网站?
高防服务器:AI智能防御DDoS攻击与数据安全保障
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
微信小程序 input输入框控件详解及实例(多种示例)
宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?
如何在香港服务器上快速搭建免备案网站?
代购小票制作网站有哪些,购物小票的简要说明?
seo网站制作优化,网站SEO优化步骤有哪些?
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
如何用IIS7快速搭建并优化网站站点?
b2c电商网站制作流程,b2c水平综合的电商平台?
如何通过虚拟主机快速完成网站搭建?
制作销售网站教学视频,销售网站有哪些?
网站制作新手教程,新手建设一个网站需要注意些什么?
深入理解Android中的xmlns:tools属性
山东云建站价格为何差异显著?
如何破解联通资金短缺导致的基站建设难题?
公众号网站制作网页,微信公众号怎么制作?
微信h5制作网站有哪些,免费微信H5页面制作工具?
个人摄影网站制作流程,摄影爱好者都去什么网站?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
如何快速配置高效服务器建站软件?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
如何快速查询网址的建站时间与历史轨迹?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
C#怎么使用委托和事件 C# delegate与event编程方法
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
建站之星如何保障用户数据免受黑客入侵?
建站之星安装失败:服务器环境不兼容?
建站之星Pro快速搭建教程:模板选择与功能配置指南
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
如何快速选择适合个人网站的云服务器配置?
广德云建站网站建设方案与建站流程优化指南
如何通过wdcp面板快速创建网站?
移民网站制作流程,怎么看加拿大移民官网?
网站制作报价单模板图片,小松挖机官方网站报价?
制作国外网站的软件,国外有哪些比较优质的网站推荐?
如何设计高效校园网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。