目录

1.Java简述

1.1简介

1.2Java由来

2.关于Java的常见误解

2.1Java是一种容易学习的程序设计语言

2.2 Java是适用于所有平台的通用性编程语言

2.3 Java与JavaScript

2.4 Java是解释型语言,对于某些关键应用程序速度太慢

3. Java与C++区别

4.Java术语


1.Java简述

1.1简介

        Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承指针等概念,因此Java语言具有功能强大和简单易用两个特征。

1.2Java由来

        在1991年,Sun公司为了抢占市场先机,成立了一个称为Green的项目小组,帕特里克、詹姆斯·高斯林(公认的Java之父)、麦克·舍林丹和其他几个工程师一起组成的工作小组,专攻计算机在家电产品上的嵌入式应用。

       由于C++所具有的优势,该项目组的研究人员首先考虑采用C++来编写程序。但对于硬件资源极其匮乏的单片式系统来说,C++程序过于复杂和庞大。为了解决困难,他们首先着眼于语言的开发,对于新语言的设计,Sun公司研发人员并没有开发一种全新的语言,而是根据嵌入式软件的要求,对C++进行了改造,去除了留在C++的一些不太实用及影响安全的成分,并结合嵌入式系统的实时性要求,开发了一种称为Oak的面向对象语言

        至于为什么叫java,那是因为在申请注册商标时,发现Oak已经被人使用了,再想了一系列名字之后,最终,使用了提议者在喝一杯爪哇咖啡时无意提到的Java词语。Java的图标也由此而来。

                                                                  Java之父"James Gosling"

2.关于Java的常见误解

2.1Java是一种容易学习的程序设计语言

        有这种想法的大都是不熟悉Java这门语言的,像Java这种功能强大的语言大都不太容易学习(说容易只是相对于C++语言来说)。相比较于实际项目来说,编写玩具式的程序当然显得轻松容易

        学习一门编程语言,不只是学习语言本身的语法,更多的是学习使用其类库中已经写好的库函数。就Java类库来说,其包含数千个类和接口以及数万个函数(方法),当然我们不必每个都需要知道,但想要用Java来解决实际问题,还是要了解不少内容的。

2.2 Java是适用于所有平台的通用性编程语言

         从理论来说完全可以,但实际中,每种语言都有其独特的优势和特点,像浏览器几乎由JavaScript掌控,处理数据则是Python,操作系统底层相关程序通常用C和C++编写,而Java则在服务器编程和跨平台客户端应用领域具有优势

2.3 Java与JavaScript

        JavaScript是一种可以在网页中使用的脚本语言,最初的名字是LiveScript。JavaScript语法与Java有相似的地方,名字也似乎表示这两个有关系,但实际上这两者并没有任何关系JavaScript是弱语言,而Java是强语言(必须声明变量类型等),JavaScript名字多有蹭Java热度的因素在其中。

2.4 Java是解释型语言,对于某些关键应用程序速度太慢

        早期Java是解释型的,现在的Java虚拟机使用了即时编译器,代码运行速度与C++相差无几,有些情况下甚至更快。

3. Java与C++区别

       语法上,可以说Java语法是C++语法的一个"纯净"版,没有C++的头文件、指针语法、结构、联合等。Java在被设计时,剔除了C++中很少使用、难以理解、容易混淆的特性

       Java相比于C++更具可移植性,比如,Java中int永远为32位的整数,而在C/C++中,int可能是16为整数、32位整数,这将导致在不同平台上,int可表示的整数范围不一致而导致数据溢出问题。

       Java与C++都是面向对象编程语言。

       Java的库函数中,部分用C++来实现。

4.Java术语

  • JDK(Java Development Kit):Java开发工具包,包含JRE、Javac.exe、Java.exe,是编写Java程序的软件
  • JRE(Java Runtime Environment):Java运行时环境,包含JVM。运行程序的软件
  • Javac:Java编译器,编译.java文件为.class文件
  • Java:运行JVM将执行.class字节码文件
  • JVM:Java虚拟机,包含类加载器,将.class字节码文件解释成机器码。
  • JavaSE:Java标准版
  • JavaEE:Java企业版
  • JavaME:Java微型版