Java编程思想之七-复用类
-
复用代码是Java众多引人注目的功能之一,但Java要乡成为极具革命性的语言,仅能够复制代码并对之加以改变还不够,还必须能够做更多的事情。
-
为了使用类而不破坏现有代码,方法之一只需在新的类中产生现有类的对象,由于新的类是由现有类的对象组成,所以这种方法称为组合,此法只复用现有程序代码的功能,而非它的形式。
-
为了使用类而不破坏现有代码,方法之二是按照现有类来创建新类,无需改变现有形式,采用现有类的形式并在其中添加代码,此法称为继承,继承是面向对象基石之一。
-
编译器不是简单地为每一个引用都创建默认对象,如果想初始化这些引用,可以将初始化定义于:在定义对象的地方;在类的构造器中;在使用这些对象之前;使用实例初始化。
-
继承是所有OOP语言和Java语言不可缺少的组成部分,创建一个类时,总是在继承,因此,除非明确指出要继承于其他类,否则就是在隐式地extends Java的标准根类Object。
-
“+=”操作符是被Java设计者重载用以处理String对象的操作符之一,另一个是“+”。
-
Java当中,一般的规则是将所有的数据成员都指定为private,将所有的方法指定为public。
-
Java中的代理是继承与组合之间的中庸之道,因为将一个成员对象置于所要构造的类中,这就像组合一样,但与此同时再将新类中暴露成员对象的所有方法,这就像继承。
-
Java中如果想要某个类清理一些东西,必须显示得编写一个特殊方法做着件事,并要确保客户端程序员知晓他们必须调用这一方法,既将这一清理动作置于finally字句之中。
-
关键字try表示,它下面的块是所谓的保护区,这意味着它需要被特殊处理,其中一项特殊处理就是说无论try是怎样退出的,保护区后的finally字句中的代码总是要被执行。
-
如果Java的基类中拥有某个已被多次重载的方法名称,那么在导出类中定义该方法名称并不会屏蔽其在基类中的任何版本,因此,无论是在该层或者它的基类中对方法进行定义,重载机制都可以正常工作。
-
@Override注解可以防止你在不想重载时而意外地进行了重载。
-
组合和继承都允许在新类中放置子对象,组合是显示地这样做,而继承则是隐式地做,组合技术通常用于想在新类中使用现有的功能而非它的接口的情形,组合表达的关系是”has-a”既“有一个”的关系,而继承表达的是”is-a” 既“是一个”的关系。
-
关键字protected起的作用就是,就类用户而言,这是private的,但对于任何继承于此类的导出类或其他任何位于同一个包内的类来说,是可以访问的。
-
子类引用转换为父类引用的动作,称为向上转型,由于向上转型是从一个较为专用的类型向一个较为通用的类型转换,总体来说,此动作很安全。
-
在很多情况下,到底是采用组合还是继承,一个最清晰的判断办法就是问一问自己是否需要从新类向基类进行向上转型,如果必须向上转型,则继承是必要的,如果不需要的话,那么就要好好考虑是否需要继承来解决。
-
Java当中的final关键字通常指的是“这是无法改变的”,可能使用到final关键字有三种情况:数据,方法和类。
-
基本数据类型被final关键字修饰时,必须对该常量进行赋值,一个既是static又是final的域只占据一段不能改变的存储空间。
-
带有恒定初始值的final static基本类型全用大写字母命名,并且字与字之间用下滑线隔开。
-
使用final方法的原因之一是把方法锁定,以防任何继承类修改她的含义,想要确保在继承中使方法行为保持不变,并且不会被覆盖;原因之二是效率(以不常用)。
-
类中所有的private方法都被隐式地指定为final。
-
当将某个类的整体定义为final时,表明不打算继承该类,而且也不允许别人继承,也就是说对类的设计永不需要做任何变动,final类中所有的成员都是final的。
-
尽管面向对象编程对继承极力强调,但在开始一个设计时,一般优先选择组合(或代理),只有在确实必要时才使用继承,因为组合更加灵活,此外,通过对成员类型使用继承技术的添加技巧,可以在运行时改变那些成员对象的类型和行为。
相关推荐
《Java编程思想》是Java开发领域的一本经典著作,它深入浅出地介绍了Java语言的核心概念和编程技术。在这个文档中,我们首先看到的是关于"类"的介绍,这是面向对象编程的基础。类是对现实世界中某些具有相同特征或...
《Java编程思想》是Java程序员领域的一本经典之作,由Bruce Eckel撰写,以其深入浅出的讲解方式和丰富的实例闻名。这本书对于想要深入理解Java语言的人来说,是一份宝贵的资源。"Thinking in Java",直译为“思考...
《Java编程思想》是Java开发领域的一本经典著作,由Bruce Eckel撰写,中文第三版则是针对中国读者的翻译版本,旨在帮助读者深入理解和掌握Java编程语言。这本书以清晰、简洁的语言介绍了Java的核心概念和技术,适合...
根据提供的文件信息,我们可以深入探讨《Java编程思想》这一主题中的关键知识点,这些知识点主要集中在类、对象、封装性、继承、多态等核心概念上。 ### Java编程思想概述 《Java编程思想》这本书深入浅出地介绍了...
《Java编程思想》是Java开发领域的一本经典著作,它深入浅出地介绍了Java语言的核心概念和编程技术。这本书以其详尽的解释、丰富的实例和严谨的逻辑深受程序员喜爱。以下将围绕标题和描述中的知识点进行详细阐述: ...
《Java编程思想》是Java初学者的一本经典教材,它以其深入浅出的讲解和丰富的实例,深受读者喜爱。本书全面覆盖了Java的基础知识,包括语法特性、面向对象编程概念、异常处理、集合框架、多线程、网络编程等多个方面...
【Java编程思想详解】 ...总的来说,Java编程思想的精髓在于理解对象如何代表现实世界中的实体,以及如何通过类和对象的交互来解决问题。通过深入学习和实践,读者能够掌握编写高效、可靠且易于维护的Java代码的技巧。
《Java编程思想》是 Bruce Eckel 编著的一本经典Java教程,这本书深入浅出地讲解了Java语言的核心概念和编程技巧。书中的练习题旨在帮助读者巩固所学知识,提高编程技能。以下是对这些练习题及参考答案的详细解析: ...
《Java编程思想》是 Bruce Eckel 的经典著作,这本书深入浅出地介绍了Java语言的核心概念和技术,被广大Java程序员视为学习Java的必备参考书。这个压缩包包含了书中的实例代码和习题答案,对于读者理解和掌握Java...
《JAVA编程思想习题及答案》是一份针对Java编程学习者的宝贵资源,它涵盖了Java语言的核心概念、设计模式以及实际编程技巧。这份资料通过习题的形式帮助学习者深入理解和掌握Java编程思想,同时提供了解答,使学习...
尽管提供的信息较为有限,主要集中在对“Java编程思想所有版本免费下载”的提及,但我们可以从中扩展出与Java编程相关的多个重要知识点。以下是对这些知识点的详细介绍: ### Java编程语言简介 Java是一种广泛使用...
《Java编程思想》是 Bruce Eckel 的经典著作,这本书深入浅出地介绍了Java语言的核心概念和技术,对于初学者和有经验的程序员来说都是极好的学习资源。中文文档的出现使得更多的中国开发者能够无障碍地理解这本权威...
例如,可能包含了一些用于演示或测试代码的辅助类,这对于理解Java编程思想中的各种设计模式和原则非常有帮助。 接下来是`pets.jar`,这个文件名暗示它可能与宠物相关的数据模型或者示例代码有关。在Java编程中,...
《Java编程思想》是 Bruce Eckel 的经典著作,这本书深入浅出地讲解了Java语言的核心概念和编程技术。这份读书笔记记录了读者在研读此书过程中的理解和体会,涵盖了从基础语法到高级特性的全面解析。以下是笔记中...
《Java编程思想》是 Bruce Eckel 的经典之作,这本书深入浅出地讲解了Java语言的各个方面,对于初学者和有经验的开发者都是宝贵的资源。课后习题解答则是学习过程中不可或缺的一部分,它提供了实践和检验理论知识的...
在这个"JAVA编程思想第三版类包"中,我们可能会看到以下知识点: 1. **类与对象**:Java是一种面向对象的语言,类是创建对象的蓝图,对象则是程序中的实例。类定义了数据(成员变量)和行为(方法)。 2. **封装**...
Java编程思想是编程领域的一本经典著作,由Bruce Eckel撰写,它深入浅出地介绍了Java语言的核心概念和编程技巧。这本书旨在帮助开发者理解面向对象编程,并提供了丰富的示例来阐述如何有效地使用Java进行程序设计。...
《Java编程思想》是 Bruce Eckel 的经典著作,这本书深入浅出地讲解了Java语言的核心概念和编程技术,是Java程序员的重要参考书籍。中文版的出现使得更多的中国开发者能够无障碍地学习这本巨著,无需面对语言障碍。...
《Java编程思想》是Bruce Eckel的经典之作,它深入浅出地介绍了Java语言的核心概念和技术。这本书中的练习题是学习者提升技能的重要途径,而这个压缩包提供的就是这些练习题的解答,以源码的形式保存为.java文件。...