实现方案的隐藏

在面向对象的编程中,主要涉及两部分人员:“类创建者”(创建新数据类型的人)以及“客户程序员”(在自己的应用程序中采用现成数据类型的人;站在客户程序员的角度来讲,他们主要就是使用“类创建者”创建好的类,以便自己快速的进行开发。而“类创建者”他们主要的职责就是从头到尾创建一个新的类,封装某些操作,当然他们为了避免自己所写的代码被别人随意进行修改,所以他们只会对“客户程序员”开放有必要开放的东西(接口),隐藏其他的细节。

接口

  • 规定了可对一个特定的对象发出那些请求,然而,必须在某个地方存在着一些代码,以便满足这些请求。这些代码与那些隐藏起来的数据便叫做“隐藏的实现”

控制队成员的对外访问

  • 防止程序员接触他们不该接触的东西——通常是内部数据类型的思想,若是只为了解决问题,客户程序员只需要操作相应的接口就可以了,不需要弄清楚其内部的实现原理。

  • 当该库设计人员想要修改其内部的结构时,不用担心修改后会对客户程序员造成什么影响,例如,当需要对该类或者库进行优化时,以便可以更好得到运行,客户程序员要使用该类时,只需要调用其接口就可以了。

边界

java采用三个显式(明确)关键字以及一个隐式(暗示)关键字来设置类边界:public,private,protected以及暗示性的friendly。

  • public修饰词,表示成员是公开的,所有其他类都可以访问
  • private修饰词,表示成员是私有的,只有自身可以访问
  • protected,表示受保护权限,体现在继承,即子类可以访问父类受保护成员,同时相同包内的其他类也可以访问protected成员
  • 无修饰词(默认),表示包访问权限(friendly, java语言中是没有friendly这个修饰符的,这样称呼应该是来源于c++ ),同一个包内可以访问,访问权限是包级访问权限
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,765评论 18 399
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,292评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 姓名:王波 日精进打卡第19天 【打卡始于2017.10.14持续于2017.11.1】 ...
    SKY_db17阅读 180评论 0 0
  • 我努力取得的成绩并无法增强我的自信,相反,令我倍感自己的无能。进步越大,这种自我怀疑越是强烈。这就像一个怪圈。我时...
    ray0802阅读 203评论 0 0