《Java编程的逻辑》第3章 类的基础 笔记+感悟分享

1.通过类实现自定义的数据类型,封装该类型的数据所具有的的属性和操作,隐藏实现细节,从而在更高的层次(类和对象层次,而非基本数据类型和函数类型的层次)上考虑和操作数据,是计算机程序解决复杂问题的一种重要的思维方式。

2.在设计线的时候,我们考虑的功能是点,而非考虑点的内部实现细节。每个类封装其内部细节,对外提供高层次的功能,使得其他类在更高层次上考虑和解决问题,是程序设计的一种基本的思维方式。

3.将现实概念映射为类以及类组合的过程,这个过程大概就是,想想现实问题大概有哪些概念,这些概念有哪些属性、哪些行为,概念之间有什么关系,然后定义类、定义属性、定义方法、定义类之间的关系。概念的属性和行为可能是非常多的,但定义的类只需要包括那些与现实问题相关的就行了。

4.类中实例变量的类型可以是当前定义的类型,两个类之间可以相互引用,这些初听起来可能难以理解,但是现实世界就是这样的,创建对象的时候这些值不需要一开始就有,也可以没有,所以是没有问题的。

5.分解现实问题中涉及的概念以及概念之间的关系,将概念表示为多个类,通过类之间的组合来表达更为复杂的概念以及概念之间的关系,是计算机程序的一种基本的思维方式。

6.Java API中所有的类和接口都位于包java或者javax下,java是标准包,javax是扩展包。(这我以前还真不知道……丢人……感谢“老马”)

7.合理使用包的一些好处:

  • 避免命名冲突。
  • 便于模块化开发。
  • 方便封装。

8.jar包打包的一般不是源代码,而是编译后的代码。打包将多个编译后的文件打包为一个文件,方便其他程序调用。

9.Java9中清晰引入了模块化的概念 (这也是我个人觉得Java9最值得学的) ,JDK和JRE都按照模块化进行了重构,传统的组织机制依然是支持的,但是新应用可以使用模块。一个应用可以由多个模块组成,一个模块可以由多个包组成。
(下面我给大家展示一下Eclipse显示的Java重构后的部分模块化结构:)
《Java编程的逻辑》第3章 类的基础 笔记+感悟分享
(当然了,还有其他的模块,就不一一展示了)

10.。。。之前居然不知道java.lang的lang是language,太羞耻了,看着这本书突然想起这码事。。。

11.import是编译时的概念,用于确定完全限定名,在运行时,只是根据完全限定名寻找并加载类。