当前位置: 首页 > news >正文

pc开奖网站建设seo关键词大搜

pc开奖网站建设,seo关键词大搜,做网站兼容ie,专门做别墅的网站封装概述 为什么需要封装? 现实生活中,每一个个体与个体之间是有边界的,每一个团体与团体之间是有边界的,而同一个个体、团体内部的信息是互通的,只是对外有所隐瞒。例如:我们使用的电脑,内部…

封装概述

为什么需要封装?

  • 现实生活中,每一个个体与个体之间是有边界的,每一个团体与团体之间是有边界的,而同一个个体、团体内部的信息是互通的,只是对外有所隐瞒。例如:我们使用的电脑,内部有CPU、硬盘、键盘、鼠标等等,每一个部件通过某种连接方式一起工作,但是各个部件之间又是独立的。

面向对象编程语言是对客观世界的模拟,客观世界里每一个事物的内部信息都是隐藏在对象内部的,外界无法直接操作和修改,只能通过指定的方式进行访问和修改。封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问。适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。

随着我们系统越来越复杂,类会越来越多,那么类之间的访问边界必须把握好,面向对象的开发原则要遵循“高内聚、低耦合”,而“高内聚,低耦合”的体现之一:

  • 高内聚:类的内部数据操作细节自己完成,不允许外部干涉;

  • 低耦合:仅对外暴露少量的方法用于使用

隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可扩展性、可维护性。通俗的讲,把该隐藏的隐藏起来,该暴露的暴露出来。这就是封装性的设计思想。

如何实现封装呢?

通俗的讲,封装就是把该隐藏的隐藏起来,该暴露的暴露出来。那么暴露的程度如何控制呢?就是依赖访问控制修饰符,也称为权限修饰符来控制。访问控制修饰符来控制相应的可见边界,边界有如下:

  • 子类
  • 模块:Java9之后引入

在Java中 权限修饰符 如下所示:

外部类,我们只能使用public和缺省来修饰

成员变量、成员方法、构造器、成员内部类,我们可以使用任意的其中一种修饰符

注意事项:

protected修饰非静态成员,跨包时,只能在子类的非静态成员中访问,在静态成员中无论是否创建对象都不能访问。

成员变量(属性)封装

好处:

  • 隐藏类的实现细节
  • 让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里面加入控制逻辑,限制对成员变量的不合理访问。还可以进行数据检查,从而有利于保证对象信息的完整性。
  • 便于修改,提高代码的可维护性。主要说的是隐藏的部分,在内部修改了,如果其对外可以的访问方式不变的话,外部根本感觉不到它的修改。例如:Java8->Java9,String从char[]转为byte[]内部实现,而对外的方法不变,我们使用者根本感觉不到它内部的修改。

成员变量也称为属性(property),我们对成员变量的封装也称之为对属性的封装。具体步骤如下:

1:使用 private 修饰成员变量,格式如下:

代码示例


public class Student {//使用 private 修饰成员变量private String name;
}

 2:提供 getXxx方法 / setXxx 方法,可以访问成员变量代码如下:

public class Student {//使用 private 修饰成员变量private String name;//获取成员变量值的getXxx方法public String getName() {return name;}//设置成员变量值的setXxx方法public void setName(String name) {this.name = name;}}

我们观察上面的代码发现,this出现在其中,但它到底是什么意思了?this代码当前对象,哪个对象调用这个方法,this就代表哪个对象,在这里它主要用来区分同名的成员变量和局部变量。

测试代码

public class Test {public static void main(String[] args) {Student student = new Student();//设置属性的值student.setName("张三");//获取属性的值System.out.println("名字是: " + student.getName());}
}

如何解决局部变量与成员变量同名问题

  • 当局部变量与类变量(静态成员变量)同名时,在类变量前面加“类名.";
  • 当局部变量与实例变量(非静态成员变量)同名时,在实例变量前面加“this.”

当然this还有其他的作用,这个我们以后在说..

总结

把该隐藏的隐藏起来,该暴露的暴露出来。这就是封装性的设计思想。封装的思想体现在Java的各个方面,例如:

  • 属性私有化是对属性的封装
  • 方法是对独立功能的封装
  • 包是对类的封装
  • ....

我们可以实际需要来使用Java中的封装性

http://www.hkea.cn/news/105437/

相关文章:

  • 万网速成网站有哪些 功能自己的网站怎么推广
  • 邯郸哪有做网站的河南百度推广公司
  • 我是做环保类产品注册哪些浏览量大的网站推销自己的产品比较好呢西安网站seo优化公司
  • 网页传奇游戏排行昆明网络推广优化
  • 商城模板网站模板网站软文是什么
  • 校园网站推广方案怎么做网站排名推广工具
  • 深圳罗湖企业网站建设报价网络媒体发稿平台
  • 用别人公司域名做网站线下推广的渠道和方法
  • php mysql的网站开发外贸推广平台
  • 济南网站建设认可搜点网络能百度指数有三个功能模块
  • 网上商城网站建设意义在线代理浏览网页
  • 网站图片切换代码百度下载并安装最新版
  • 微信公众平台号申请注册入口杭州seo公司
  • 本周实时热点新闻事件seo文章代写一篇多少钱
  • 旺店通app手机企业版下载网站seo如何优化
  • 宝山区建设用地事务所网站网络公司有哪些
  • 用sql做简单的博客网站大连谷歌seo
  • 新手怎么学做网站就业培训机构有哪些
  • magento网站建设搭建网站步骤
  • 营销网站如何实现差异化南京seo公司
  • 服务器托管是啥搜索引擎优化排名培训
  • 山西手机网站建设网址大全123
  • b2c平台有哪些平台网址新区seo整站优化公司
  • WordPress突然全站404网站如何添加友情链接
  • 复制别人网站做第一站seo短视频网页入口引流下载
  • 基层建设论文收录在哪个网站百度统计api
  • 购买主机可以做网站吗楚雄今日头条新闻
  • 深圳专业网站建设公司哪家好宁波网络营销公司
  • ps做电商网站流程图百度图片识别搜索引擎
  • 做电影网站程序好用武汉网站建设推广公司