`
shermenn
  • 浏览: 14197 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

类创建者 和 客户端程序员 -《thinking in java》

 
阅读更多
《thinking in java》中提到程序员分两种:类创建者 和 客户端程序员
private 可以保护那些类创建者不想让 客户端程序员访问的变量,以免破坏类的正常逻辑。
我觉得这个观点很有意思,让我联想到

即使是public 方法亦有被客户端程序员间接破坏的情况。这里的间接破坏就是客户端程序员自己新起类,继承(extends)第三方类,重写其方法。比如 CustomizeHashMap extends HashMap,
重写 add 方法。 你可以会在使用 CustomizeHashMap  的addAll 方法中出现问题。这是因为 在 父类HashMap中 addAll 使用了 add 方法,但是没有任何地方告诉客户端程序员,除非你去阅读源码 或者询问 类创建者。


在此同时《设计模式》(作者四人帮)中描述组合模式(composition )时, 鼓励 客户端程序员 在实现扩展 第三方lib 类,最好使用组合模式。因为组合模式可以扩展第三方类但是达到不破坏的独特功效,实在是客户端程序员居家旅行必备良药。
分享到:
评论

相关推荐

    SourceCode-for-Thinking-in-Java.chm.zip_in

    这个压缩包文件“SourceCode-for-Thinking-in-Java.chm.zip_in”包含了与《Thinking in Java》一书配套的源代码,是学习和实践Java编程的宝贵资源。 在书中,作者通过丰富的示例和详尽的解释,引导读者思考如何使用...

    第四版-Thinking+In+Java-练习题答案

    《Thinking in Java》是Bruce Eckel的经典编程教材,第四版更是深受广大Java程序员喜爱。这本书以其深入浅出的讲解方式,全面系统地介绍了Java语言的核心概念和技术。在解答该书的练习题时,我们可以深入理解Java...

    Thinking in java 电子书

    《Thinking in Java》是 Bruce Eckel 编著的一本经典的Java编程教材,它深受程序员喜爱,被誉为学习Java的必备参考书。这本书全面深入地探讨了Java语言的核心概念和技术,不仅适合初学者,也对有经验的程序员提供了...

    Thinking in Java TXT 电子书

    在《Thinking in Java》一书中,作者Bruce Eckel强调了面向对象编程的核心原则和技术细节,特别是Java语言中的类、对象以及访问控制等核心概念。本书中提到了类库(library)的重要性及其如何被客户端程序员所使用。...

    thinking in java 源码

    《Thinking in Java》是Bruce Eckel的经典Java编程教材,它以其深入浅出的讲解和丰富的实例赢得了广大程序员的赞誉。这个源码包包含了第4版的开发源码,旨在帮助读者更好地理解书中所阐述的概念和原理。以下是基于...

    Thinking in java java源代码

    7. **网络编程**:Java提供了Socket和ServerSocket类进行网络通信,可以创建客户端和服务器端应用。此外,还有URL、URLConnection等类用于访问网络资源。 8. **反射机制**:Java的反射机制允许在运行时动态地获取类...

    The Thinking in Java Annotated Solution Guide

    《The Thinking in Java》是 Bruce Eckel 所著的一本经典Java编程教材,以其深入浅出的讲解方式深受程序员喜爱。这本书旨在引导读者深入理解Java语言的核心概念和机制,不仅覆盖了基础语法,还包括高级特性如多线程...

    Thinking in Java(英)

    11. **设计模式**:作为程序员的通用智慧结晶,设计模式在《Thinking in Java》中也会有所涉及,比如单例模式、工厂模式、观察者模式等。 12. **测试**:包括JUnit框架和其他单元测试工具的使用,以及测试驱动开发...

    Thinking in Java 3rd Edition

    《Thinking in Java 3rd Edition》是一本深受程序员喜爱的经典Java编程教材,由Bruce Eckel撰写。这本书以其深入浅出的讲解方式,详尽全面的内容覆盖,为学习者提供了掌握Java编程的坚实基础。第三版出版时,Java...

    《thinking in java》电子版

    《Thinking in Java》是Java编程领域的一本经典著作,由Bruce Eckel撰写,深受程序员喜爱。这本书深入浅出地介绍了Java语言的核心概念和技术,旨在帮助读者建立起扎实的面向对象编程思维。以下是对这本书中关键知识...

    thinking in java 代码

    《Thinking in Java》是Bruce Eckel的经典编程教材,它深入浅出地介绍了Java语言的核心概念和技术。这本书以其全面性、深度和清晰的讲解而受到广大程序员的推崇,是Java学习者的必读之作。这里我们主要关注的是其源...

    Thinking In Java - 3rd

    在《Thinking in Java》第三版中,作者会深入讲解如何设计和实现类,以及如何利用继承、封装和多态等核心OOP概念。 2. **基础语法**: 书中涵盖了Java的基础语法,包括变量、数据类型、控制结构(如if语句、for循环...

    Thinking-in-Java2版.rar

    《Thinking in Java》是Bruce Eckel的经典之作,第二版针对初学者和有经验的Java开发者提供了深入、全面的Java编程知识。这本书以其清晰的逻辑和深入的解释闻名,被誉为理解Java语言思想的重要参考资料。 在Java...

    Thinking in Java 3th书籍以及习题解答

    1. 面向对象编程:《Thinking in Java》强调了Java的面向对象特性,包括类、对象、继承、封装和多态等基本概念。书中通过实例讲解如何设计和实现类,如何利用继承来实现代码重用,以及如何利用多态性来提高程序的...

    Thinking in Java 2nd习题及答案

    《Thinking in Java 2nd习题及答案》是学习Java编程的重要参考资料,它基于Bruce Eckel的《Thinking in Java》第二版,提供了书中的习题解答,帮助读者深入理解和掌握Java语言的核心概念与技术。这本书涵盖了Java...

    thinking in java(中英文版pdf)

    《Thinking in Java》是Bruce Eckel的经典之作,它是一本深度和广度并重的Java编程教程,适合从初学者到高级开发者的各个层次。这本书以其深入浅出的讲解方式和丰富的实例,深受全球程序员的喜爱。中英文双语版更是...

    Thinking in Java 4th 英文版 pdf&doc双份格式 附随书代码

    《Thinking in Java》是Bruce Eckel的经典编程教材,第四版(4th Edition)更是深受全球程序员喜爱。这本书深入浅出地介绍了Java编程语言的核心概念和技术,涵盖了从基础语法到高级特性的广泛内容。以下是该书及其...

    thinking in java

    2. **面向对象编程**:Java是一种面向对象的语言,因此《Thinking in Java》深入讨论了类、对象、封装、继承和多态等面向对象编程的基本原则。书中通过丰富的示例,帮助读者理解如何设计和实现具有复用性和扩展性的...

    Thinking in Java 4th Edition习题答案

    《Thinking in Java 4th Edition》是Java编程领域的一本经典教材,由Bruce Eckel撰写。这本书深入浅出地介绍了Java语言的核心概念和技术,包括面向对象编程、泛型、集合框架、多线程、网络编程等多个方面。第四版在...

Global site tag (gtag.js) - Google Analytics