从虚拟机访问回来的Java爷爷全然不顾身体的疲惫,连夜找我们几个面向对象的编程语言商量类的继承安排。谈得晚了,便送我们出方法,要垃圾回收器送我们回堆内存。在去字节码的路上,我们说:“Java爷爷,您回去休息吧。您刚从虚拟机回来。”
Java爷爷摇摇头,“不碍事,你们知道现在编程世界有很多语言不支持跨平台,不断给我们制造兼容性问题。你们是面向对象编程语言的未来,你们的事情便是编程语言的大事,是头等大事。”我们都激动了,眼里噙着大括号。多好的Java爷爷呀。
Java爷爷抬头看看堆内存说:“如果世界真像这堆内存这么有序就好了,但是就有一些低级语言,像C、C++,要搞乱这个世界,他们是罪人。”
说着,Java爷爷弯下腰,从`java.lang`里捡出一个对象,然后看着堆内存说:“该死的指针操作。”
说着他把对象奋力向上一抛。很快就见一块内存区域突然爆发出耀眼的`NullPointerException`,然后就崩溃下来。“这是C语言的指针,他们一直在内存里随意访问,破坏我们的安全性,我已经忍了很久了。”Java爷爷愤愤地说。面向对象的编程语言们都鼓起掌来,为编程界有这样的领导者感到自豪。
一会儿,Java爷爷叫来编译器问:“那个对象抛到什么地方了?”“好像是垃圾回收区。”编译器说。
Java爷爷一怔,说:“赶紧派线程去查,看有什么问题没有。”之后Java爷爷送我们到字节码门口,一直挥手到看不见我们。
第四天我们听说垃圾回收区那边出事了,我们很紧张。而这时Java爷爷叫我们过去。
他依然那么慈祥,让我们坐下说:“自动化总是要有牺牲的。为内存管理事业牺牲的对象是伟大的。”他这时低下头说:“但我必须承认,我当时未捕获异常的行为太鲁莽了,我在这里向虚拟机道歉。我将向虚拟机说明情况。”
我们顿时热泪盈眶,多好的Java爷爷呀,他在跟C语言斗争过程中的小失误竟然被他记在心里,还道了歉。我们在将来的学习中一定要向Java爷爷学,学他老人家那宽广的胸怀,和不耻下问的精神。