PDF 课件和源代码下载地址:
https://github.com/geektime-geekbang/LetsJava
作者回复: 后续内容制作按计划稳步推进中。学完第一篇可以自己试着写一些小程序。比如双人五子棋对战。
我会提供一个代码实现,上传到GitHub供大家参考。
P.S. 觉得不错的话,东西欢迎分享 (-:
作者回复:
是我讲的太好,还是你太优秀,关于引用的关系竟然理解的丝毫不差。
稍微有些不准确的是“后者是编译时确定的绝对地址”。这栈内地址也不是编译时确定的。每次调用方法都会给方法分配一段内存作为存储方法中局部变量所用。所以每个变量在这个基础上,也是一个偏移量,这个偏移量对每个变量来说说固定的。比如说a,可能就是8,每次都是栈地址+8是其真正的地址。
其实Java编译完之后,没有什么东西是有绝对内存地址的,中间还隔了一个Java虚拟机呢。即使是本地程序(比如Windows上编译成exe的程序),也不是绝对地址。如果我学的操作系统和汇编语言还没完全扔掉的话,好像只有内核有绝对地址?真实的内存地址有时候要经过好几次相对地址的变化,我记得当时一个基址变址寻址了解一下?
作者回复: 嗯呐,下次再有人问为什么你们程序员总喜欢从 0 开始计数,就反问:你知道什么是数组吗?
作者回复:
其实应该是我在点点点,但是本子太小了看着就像是在抖抖抖囧rz.....
作者回复: 完全正确。
作者回复: 是的,它是一个独立的领域
作者回复: 大家能看懂, 我斥巨资买道具也值得 (-:
作者回复: Map会在后面讲. 现在讲还差了引用等一大串知识点.