1、一切都是对象,用引用操作对象

  1.1程序存储的地方

    引用存放在堆栈区(通用的RAM),所有对象存储在堆(一种通用的内存池)。堆和堆栈的区别:堆栈中的这些引用,java系统是要知道确切的生命周期,堆里面的对象数据java系统就不需要知道。堆里面的数据的分配和清理可能会更耗费时间。

  1.2高精度数字

    java中提供了BigInteger和BigDecimal。方法调用的方式来取代运算符的方式。所以速度会慢了许多。

2、复用类

  2.1组合——has-a

  2.2继承——is-a

  2.3代理

  2.4名称屏蔽

    父类中有一个被重载多次的函数,在导出类中又被重载了,此时,导出类中支持所有的重载函数,这与C++不一样。C++自动屏蔽基类的方法。

3、final关键字

  static final 代表编译期常量

  3.1final基本类型——值不变

  3.2final对象引用——引用不变,对象可修改

  3.3final方法——      不能被覆盖

    两个作用:①把方法锁定,以防止任何继承类修改他的含义。想要确保在继承中方法行为保持不变且不会被覆盖②效率,因为可以讲final方法转内嵌调用,内嵌的话就应该适合代码量小的函数。

  类中的所有private方法都隐式的指定为final。由于无法继承private方法,所以也就无法覆盖它。

  3.4final类——         不能被继承(所以final类的方法全被隐式指定为final方法),出于某种考虑,对该类的设计永远不需要做任何改动。

4、多态(动态绑定或者运行时期绑定)

  4.1多态的作用

  4.2java中除了static、final方法(private属于final方法)其余都是运行期绑定。

  4.3返回值不一样在java高德版本中并不影响多态的实现。

读书笔记——thinking in java的更多相关文章

  1. 读书笔记,《Java 8实战》,第四章,引入流

       集合是Java中使用最多的API,但集合操作却远远算不上完美.主要表现在两点,    第一,集合不能让我们像数据库的SQL语言一样用申明式的语言指定操作:    第二,现在的集合API无法让我们 ...

  2. 读书笔记系列之java性能优化权威指南 一 第一章

    主题:java性能优化权威指南 pdf 版本:英文版 Java Performance Tuning 忽略:(0~24页)Performance+Acknowledge 1.Strategies, A ...

  3. 读书笔记之深入分析Java Web技术内幕

    章节: 1 B/SB/S的优点: 客户端使用统一的浏览器(Browser) ,浏览器的统一带来了操作的统一,无论使用什么服务,因为浏览器是相同的,所以操作类似.客户使用简单了.服务端开发简化; 使用统 ...

  4. 深入Java虚拟机读书笔记第一章Java体系结构介绍

    第1章 Java体系结构介绍 Java技术核心:Java虚拟机 Java:安全(先天防bug的设计.内存).健壮.平台无关.网络无关(底层结构上,对象序列化和RMI为分布式系统中各个部分共享对象提供了 ...

  5. 读书笔记之《Java编程思想》

    17. 容器 Set 存入Set的每个元素都必须是唯一的,因为Set不保存重复元素. Set接口不保证维护元素的次序 Map 映射表(关联数组)的基本思想是维护的是键-值(对)关联,因此可以用键来查找 ...

  6. Java 读书笔记 (十六) Java 继承

    例: 开发动物类,其中动物分别为企鹅以及老鼠,要求如下: 企鹅: 属性(姓名,id), 方法(吃,睡,自我介绍) 老鼠: 属性(姓名,id), 方法(吃,睡,自我介绍) 企鹅类: public cla ...

  7. Java 读书笔记 (十五) Java 异常处理

    捕获异常 使用try 和catch关键字可以捕获异常.try/catch 代码块放在异常可能发生的地方. try/catch 代码块中的代码称为保护代码 ,使用try/catch的语法如下: try ...

  8. Java 读书笔记 (十四) Java 方法

    finalize() 方法 finalize() 用来清除回收对象.  //为什么要回收内存?怎样写可以避免内存过多占用?什么时候需要手动回收内存? protected void finalize() ...

  9. Java 读书笔记 (十二) Java Character 类

    在实际开发过程中, 我们经常会遇到需要使用对象,而不是内置数据类型的情况. 为了解决这个问题, Java语言为内置数据类型char提供了包装类Character类. 可以使用Character的构造方 ...

随机推荐

  1. Windows下的ls的命令

    习惯了linux下的ls命令,windows的dir用的很不习惯,又不想装cygwin, bash,就想把dir重命名为ls,发现dos下有个命令doskey可以完成该功能.在命令提示符下敲: > ...

  2. perl脚本之目录

    来源: http://www.cnblogs.com/itech/archive/2013/02/20/2919204.html http://stackoverflow.com/questions/ ...

  3. to_date()与to_char()

    1.以时间(Date类型)为查询条件时,可以用to_date函数实现: select t.* from D101 t where t.d101_40 = to_date('2013/9/12', 'y ...

  4. rm: 无法删除 "xxxxx.o" : 输入/输出错误.

    rm: 无法删除 "xxxxx.o" : 输入/输出错误. 碰到无法删除的文件,以为完蛋了,要重装. 后面重启一下就可以了

  5. webstorm比dreamweaver强大的地方 转

    比dw强大的地方有: . 对js的开发有长足的支持,那些自动提示,代码主题,调试之类的我就不说了,主要是对流行技术的支持,比如Node.js,less,sass,jq,ext,prototype等框架 ...

  6. wpf CollectionViewSource的运用

    实体类: 员工类: public class Department : ObservableCollection<Employee> { public string DepName { g ...

  7. CodeForces 719B Anatoly and Cockroaches 思维锻炼题

    题目大意:有一排蟑螂,只有r和b两种颜色,你可以交换任意两只蟑螂的位置,或涂改一个蟑螂的颜色,使其变成r和b交互排列的形式.问做少的操作次数. 题目思路:更改后的队列只有两种形式:长度为n以r开头:长 ...

  8. div+css网页本地上和上传到服务器后在IE11上看到的效果不一样?

    div+css网页本地上和上传到服务器后在IE11上看到的效果不一样? 解决办法在html的head里加上一段:<meta http-equiv="X-UA-Compatible&qu ...

  9. execlp("ls","flw","-?",(char *)0) 为什么少了最后的一个参数就不行?

    execlp("ls","flw","-?",(char *)0) 为什么少了最后的一个参数就不行?

  10. easyui formatter 返回easyui组件

    <table id="dg2" title="标题" style="width:400px;float: left;"> < ...