Java三大特性-封装

前言

         关于封装,一般面试不会问太多,三大特性问的最多的是多态,后面文章会给大家介绍!

1.什么是封装

        举个例子,一台电脑,人们正常操控的是电源,网线,开关机,光驱,usb,显示器等对外显现部分,而内部的cpu,主板,显卡,网卡等部分是不对外显现的,也是不建议人们自行去修改的,内部的核心组建被封装在在了主机箱以内-这就是一个封装的实例;

so,什么是封装呢?

        封装其实就是包装,也可以说是信息的隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使之与外部发生联系。系统的其他对象只能通过包裹在数据外面的已经授权的操作来与这个封装的对象进行交流和交互。也就是说用户是不知道对象内部的实现细节的,但可以通过该对象对外的提供的接口来访问该对象。

2.为什么要有封装

谈到为什么要有封装,就得提到封装到底有什么特点了;

1)隐藏具体实现:对内修改不影响外部正常调用,不允许外部成员修改其隐藏的部分

        这样操作的好处在于安全,即当电脑无法开机的时候,维修人员修改内部组件,对我们而言是不可知的,我们不知道维修人员到底修改了哪些组件, 但结果就是我们能开机了-此处即对内修改不影响外部调用;

2)更好的操控成员:将内部成员分类,private-仅内部可以操控,protected-可以继承,public-外部成员可以操控;

3)降低代码耦合性:良好的封装是可以降低代码耦合性的,例如将主机的每个小部件进行封装,usb,光驱,键盘,鼠标等部件封装成独立个体,当鼠标不能运作的时候,不影响其他部件正常运行;

4)提升可复用性:每个部件都是独立的个体,可以在多种环境下使用;例如封装后的鼠标,既可以在笔记本上使用,也可以在台式机上使用。

3.封装实例

1)可以看一下未进行任何封装的例子:

可以看出这样写的缺点是:无复用性,如果另一个地方用鼠标,那就得新建;

2)进行简单封装,此处为了方便,就都写在一个类里面了,方便大家观察;实际运用,建议分开;

这部分我们进行了简单的封装,提高了复用性,其他地方也可以使用,但是目前的方案安全性不高,容易被非法修改内容

3)再次进行改进

可以看到,现在安全性满足了,复用性也满足了,但是所有方法都成了隐藏的,外部用户只能看到一个黑盒子,完全无从下手

4)再次改进,将对外方法开放出来

排版有点搓大家将就着看一下,右侧是输出结果; 可以看一下,这样封装后,便达到了我们的目的

4.面试回答封装

    众所周知面试的时候不能扑拉扑拉的把这么多内容给他背下来;也没有这么多扯淡的时间;

    言简意赅的概括封装:

    封装性就是把对象的属性和服务组合成一个独立的单位,提高复用性,降低耦合性,并尽可能隐藏内部实现,提高安全性;

    最后告知大家,重要的还是理解设计原理,带着问题去看才能学到东西,当然可能有比较着面试的朋友没什么时间准备,那就只能去背我们总结的了,希望能帮到正在找工作的您;

    写的有不对的地方还请大家指出,我们会第一时间更正, 您的支持是我们努力的更新的动力源泉,欢迎大家将面试过程中遇到的问题发给我们,我们会第一时间整理更新,希望能帮忙更多正在找工作的朋友;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,185评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,652评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,524评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,339评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,387评论 6 391
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,287评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,130评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,985评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,420评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,617评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,779评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,477评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,088评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,716评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,857评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,876评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,700评论 2 354

推荐阅读更多精彩内容

  • 封装 1.什么是封装尽可能的隐藏内部的细节,只保留一些对外接口使之与外部发生联系。用户无序知道对象内部的细节,但可...
    erki_stwee阅读 313评论 0 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,098评论 25 707
  • 从打篮球至今,已有五个年头,当然,我并不是专业的篮球运动员,我只是喜欢,身为女生,爱上了这种其他女生眼中的剧烈运动...
    掉落人群阅读 615评论 5 3
  • 学习箫也有一段时间,在最难过的时候一直在学习! 现在是身边一个朋友,坚持下去 话不多,写不多,只为把箫的文化,做交流
    小宝哈哈喽喽阅读 270评论 0 0
  • 苹果是跟着视频学画的第一幅彩铅画,也让自己有了继续学习彩铅画的动力。 以下几幅有的是跟着视频学画的,有的是照着图片画的。
    whl2395阅读 654评论 12 16