java中的封装、继承、多态可谓是踏入这一行业的必经之槛,诸多新人在不明就里的状况下将其各类概念背的是倒背如流。即使是工做多年以后,也不见得能说出个因此然,或许冥冥之中已经写过无数封装的代码,只是近在眼前人不识了。也正是鉴于此,趁着有所心得,螃蟹留个印记,供你们分享与指正。
既然做为一个安全系数很高的编程语言,内部结构及权限分配必然有着独到之处,就像是初来乍到就碰到的private、public、protected,一头雾水,虽然用几分钟时间弄的很明白,但之后的很长时间都是处于混乱状态,直到有一天完全明白了各自的用途及意义,才不由很满意的来上一句:擦,原来这么回事!
下面咱们就经过一个场景看看封装有什么做用。
生活中咱们常常见到各类管道,也常常见到换水管的维修工人,拿着图纸找到位置一阵忙活。水源自哪里他们能够不用关心,怎么可以将新旧管道对接才是手头的任务。而java中的封装也就相似于此,被封装的类或方法等你能够不用关心它是怎么实现的,即使你关心也没有用,能作的就是按它的要求使用它。就像咱们按照协议组织了一个报文,就像咱们经过一个指令调用了某一个表的数据,全部的实现过程都被掩盖了起来,而咱们依然能够经过某些参数调用并返回咱们想要的结果,这是否是像极了咱们所说的接口?
看看微信开发平台,想一想IOS客户端,这都是一些封装的例子。平时咱们一谈起封装就会想起private的setter和getter,没错,这是最经典的一种实现,但若是咱们的认识只局限于此,是否是真把java当咖啡了?
封装它是一种很美的结构体,它彻底能够按照你的意愿来进行编写,若是你设置的权限足够小,它甚至不能生成API接口,javadoc那都是浮云?想一想,假若有一个很大很成熟的系统,若是咱们想借用它只能经过你封装的这一条路的时候,是否是很酷的感受?
每当想起明天上班还要签到,对封装的抵触便油然而生。。。html
做者专栏:java下午茶java