`
vivambulate
  • 浏览: 9583 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Chapter 1 An Introduction to Java[Core Java 8e note]

阅读更多

First release of Java: 1996

Java 的11个口号:

1. Simple

    和C++相比,去除很多不常用、不好理解、易混淆的弊大于利的特性,如头文件、指针、结构、联合、操作符重载等;

    ...

2. Object oriented

    和C++相似,区别是Java是单继承,其多继承特性由接口这个概念和metaclass model(这是啥?待查)来实现

3. Network-Savvy

    但凡写过网络编程的都觉得用Java来写真是省事,至少我是这么觉得,就和本地文件读取一样

4. Robust

    强健性,和C++类似,但是Java不用担心指针越界

5. Secure

6. Architecture Neutral

    .java  ----->  .class(bytecode, 平台无关)   ------>   interpret(不同架构的机器上解释执行)

    劣势:比直接从机器码执行慢,但是

    即时编译(just in time complilation)改善了这一情况

7. Portable

    比如,C/C++ 的int可能是16bit,也可能是32bit,这取决于不同编译器,但Java的int就是32bit。有固定的大小消除了很多问题比如字节序。

    还比如,图形程序,早期的java 1.0因为使用host的用户接口,所以在WIN/UNIX/MAC上显示会有差异,但是有总比没有好。经过改进的java工具包已经完全重写,不在依靠host,可以再现实上实现多平台一致性。

8. Interpretd

    早期的Java通过Incremental linking(增量链接)来解释执行,很慢;

    现在的Java通过JIT compiler

9. High Performance

    感谢JIT

10. Multithreaded

11. Dynamic

 

Java的理解误区:

1. Java很简单?

    Java无比强大,写一个hello world确实很简单,但是...

2. Java会成为所有平台的通用编程语言?

    这是所有人的美好愿望(也许除了微软)。一些涉及到硬件的程序比如文字处理、照片编辑等,已经用C\C++写好并且有多个平台的版本,显然用Java重写并不能带来什么性能上的优势。(所以一些Java写得游戏引擎在涉及到性能时还是会用C\C++写- -|)

3. Java干不过C#?

    当然,在Windows下干活的话,C#还是蛮强势...但是C#离开Windows就不行了。

4. JavaScript是Java的mini版?

    两者除了名字相似,语法相近,真没其他关系了。JavaScript是由伟大的Netscape发明,本叫LiveScript(就叫这个名多好)

 

 

Chapter 1 end.

 

上个图纪念下~

  • 大小: 322.4 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics