第六章 访问权限控制
问题:如何把变动的事物与保持不变的事物区分开来
我们这一章主要的目的要实现高内聚,低耦合,保持提供给客户端开发者的接口不变,但是里面可以变,这里的接口不变,指你的低耦合性,使开发者不依赖你的类型而进行开发,所以一般都是提供接口
而访问权限控制就是为了实现这个目的
.包:库单元,类库
一个java源文件也叫做编译单元或者转译单元,其内部可以有一个public 类,该类名字与文件名相同,只能有一个,若还有其他类,包外面的是看不见的,因为缺省是包内权限,而类的权限也只能是包内和public
.代码组织
.java文件中每一个类都会有一个输出文件,名字与类名相同,.class
java可运行程序是一组可以打包并压缩为一个java文档文件jar的class文件,java解释器负责这些文件的查找,装载和解释
package与import的作用是将单一的全局名字分开,而避免出现名称冲突的问题,package名称是intenent域名的反顺序
.java解释器的运行过程:
找到环境变量CLASSPATH,解释器获得包名。遇点则替换为反斜杠\,则产生了一个第一无二的路径名.解释器就是这样找到class文件的.
注:工具类的方法一般是公开静态的,可以用静态import导入语句
.java访问权限修饰词
public,任何人都可以访问
包访问权限,也就是不写任何修饰词的时候,默认的访问权限,只能在同一个包(编译单元)才能访问的(类似友元类)
protected,继承访问权限,简单来说就是老爸帮访问银行金卡的权限给了儿子.
private,同一个类的才能访问,同一个文件不同类的不能访问,必须是要同一个类,private非常重要与实用
.接口与实现
这一个可以说是java里面非常重要与实用的特性,在后面的章节会有详细介绍,我们经常把数据与方法包装在类中,然后通过访问权限控制,对具体实现隐藏起来,然后露出一个类型无关的接口供他人使用,这就是良好的封装
一般最好将public放在最前,然后是包权限,然后是protected,private,易于阅读者
.类的访问权限
类只有public 和包权限控制,若不想别人访问,可以在构造器用private,不过内部类可以使private和protected
这一章有一个设计模式,单例设计模式,具体可以去我的博客设计模式那里看
总结
这一章对我而言,是介绍了一个面向对象的入门,java提供访问权限给我们去限制那些使用我们代码的人,让他们接触到他们应该接触到的东西,而不是不应该的,我们提供给他们的是服务,就像电,这个词用得挺好的,就像使用电那样方便,只需要插上插头,不需要理解我插头后面是怎么样运作的,而当我需要发生改革时,插头仍然是三个的,保持了对外的不变性,这样当我需要变革时,我不需要顾虑是否会影响接口使用者而绊手绊脚,而接口使用者而不需要每次我版本升级后,他进行辛苦的代码修改。
注:java之设计模式 http://java.chinaitlab.com/special/patterns/Index.html
设计模式是面向对象编程的热门话题之一,越来越多的开发人员认识到设计模式的重要性。采用各种语言实现设计模式的文章也越来越多,但是很多开发人员发现很难将设计模式与实际开发中需要解决的具体问题相联系。
因为使用设计模式的难点往往不在于模式的实现,而在于很难确定哪种模式可以在现实的应用场景中采用,从而导致了在现实的项目中,面对客户的压力,我们总是采用最直截了当的方法解决问题。
本专题将用引用多个实例进行讲述Java设计模式,让大家对设计模式有更深的了解..........
具体内容请点击链接,他介绍得很形象,用图例介绍的,非常易懂
java美女 6
分享到:
相关推荐
这是我经过半年的认真研读《thinking in java》这本书的读书笔记,涉及到从容器一章开始的所有后续章节的内容,只有把握我笔记中的内容我想你就差不多弄懂了<thinking in java>这本书的精华
Thinking in Java 自学笔记——第二章 一切皆对象 个人原创,不喜勿喷。
本人在自学Thinking in Java这本书时所总结归纳的一些重点,希望能帮助大家更好地理解此书
这是我看Thinking in java 做的笔记,和大家分享下,如有不明白的的地方可与我私信,或者直接问度娘。
英文版Thinking in java Thinking in Java Fourth Edition Bruce Eckel President, MindView, Inc.
Thinking in Java 自学笔记——第一章 对象导论 个人原创,不喜勿喷。
Thinking in java第三版中文版,第四版英文版以及对应的习题答案! 博文链接:https://easonfans.iteye.com/blog/456901
Thinking in Java 4th Edition Annotated Solutions Guide!
Thinking in Java 4Edition 练习题答案
Thinking In Java学习之50问 Thinking In Java学习之50问 Thinking In Java学习之50问
Thinking in Java(java编程思想) 第三版+第四版(完整中文版电子书+配套习题答案) 本资料包括四部分内容: 1、Thinking in Java 3th Edition.pdf为java编程思想第三版,是中文版,pdf格式,不是扫描版,非常清晰...
Thinking in java 电子书,经典java书籍
thinking in java thinking in java thinking in java thinking in java thinking in java
java ,thinking in java ,源码,thinking in java 第四版源码。。欢迎使用
王者归来之--Java编程思想读书笔记 Think in java4th
thinking in java 文档
Thinking in Java 习题答案, 源代码
Thinking in java 中文版 学习Java必备教材
thinking in java读书笔记,内容不多,但觉得精彩,不好您可以在评论里骂我。
以绝对敏锐的眼光解析thinking in java,彻底让你理解本章!