网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.学习深入Java 1.5枚举类型的内部.
.引用外部类对象.
.派生线程类.
.Eclipse Forms设计漂亮UI之高级组.
.一个简单的自定义ClassLoader的实.
.Tomcat设置类似IIS的访问密码.
.JavaScript如何与Applet通讯.
.Java 电 子 商 贸 结 构.
.JAVA的学习体会.
.品味Spring 的魅力.
.使用JAXP处理XML文件.
.Tomcat新手攻略.
.专稿:实战EJB之四 开发实体CMP(.
.纯Java周历的写法.
.Netbeans IDE常见问题集锦.
.Java:默认变量初始化.
.使用ORM工具进行数据访问.
.基于Stripes框架进行Java Web开发.
.怎样使用Junit Framework进行单元.
.Java EJB容器的存取和实现.

接口与实现

发表日期:2008-1-5



  我们通常认为访问控制是“隐藏实施细节”的一种方式。将数据和方法封装到类内后,可生成一种数据类型,它具有自己的特征与行为。但由于两方面重要的原因,访问为那个数据类型加上了自己的边界。第一个原因是规定客户程序员哪些能够使用,哪些不能。我们可在结构里构建自己的内部机制,不用担心客户程序员将其当作接口的一部分,从而自由地使用或者“滥用”。
  
  这个原因直接导致了第二个原因:我们需要将接口同实施细节分离开。若结构在一系列程序中使用,但用户除了将消息发给public接口之外,不能做其他任何事情,我们就可以改变不属于public的所有东西(如“友好的”、protected以及private),同时不要求用户对他们的代码作任何修改。
  
  我们现在是在一个面向对象的编程环境中,其中的一个类(class)实际是指“一类对象”,就象我们说“鱼类”或“鸟类”那样。从属于这个类的所有对象都共享这些特征与行为。“类”是对属于这一类的所有对象的外观及行为进行的一种描述。
  
  在一些早期OOP语言中,如Simula-67,要害字class的作用是描述一种新的数据类型。同样的要害字在大多数面向对象的编程语言里都得到了应用。它其实是整个语言的焦点:需要新建数据类型的场合比那些用于容纳数据和方法的“容器”多得多。
  
  在Java中,类是最基本的OOP概念。它是本书未采用粗体印刷的要害字之一——由于数量太多,所以会造成页面排版的严重混乱。
  
  为清楚起见,可考虑用非凡的样式创建一个类:将public成员置于最开头,后面跟随protected、友好以及private成员。这样做的好处是类的使用者可从上向下依次阅读,并首先看到对自己来说最重要的内容(即public成员,因为它们可从文件的外部访问),并在碰到非公共成员后停止阅读,后者已经属于内部实施细节的一部分了。然而,利用由javadoc提供支持的注释文档(已在第2章介绍),代码的可读性问题已在很大程度上得到了解决。
  
  public class X {
   public void pub1( ) { /* . . . */ }
   public void pub2( ) { /* . . . */ }
   public void pub3( ) { /* . . . */ }
   private void priv1( ) { /* . . . */ }
   private void priv2( ) { /* . . . */ }
   private void priv3( ) { /* . . . */ }
   private int i;
   // . . .
  }
  
  由于接口和实施细节仍然混合在一起,所以只是部分轻易阅读。也就是说,仍然能够看到源码——实施的细节,因为它们需要保存在类里面。向一个类的消费者显示出接口实际是“类浏览器”的工作。这种工具能查找所有可用的类,总结出可对它们采取的全部操作(比如可以使用哪些成员等),并用一种清爽悦目的形式显示出来。到大家读到这本书的时候,所有优秀的Java开发工具都应推出了自己的浏览器。
上一篇:对象private:不能接触! 人气:672
下一篇:类访问 人气:421
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐