JAVA 概述

一、为什么要学习JAVA?它可以用于什么场合?

  JAVA 是目前主流语言之一,受到很多人的欢迎,因为它用途特别广泛:

    1.开发服务器程序

     2.开发Android应用

     3.开发软件工具

     4.应用于嵌入式领域

     5.应用于大数据技术

二、发展历史

  1991年由sun 公司詹姆斯.高斯林领导的小组开始设计一种小型计算机语言,要求语言必须非常之肖且能够生成非常紧凑的代码同时可以跨平台运行。1995年正式确立并命名为JAVA。1996年发布JAVA 1.0版本。于2009年被Oracle公司收购。现已更新到19版本,约每半年更新一次。

三、JAVA 语言特点

  1.开源

        即开放源代码,是免费的

  2.简单、高效

  3.面向对象

        区别于C语言面向过程的特点,对 Java 语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发。对象就是面向对象程序设计的核心。

  4.平台无关性

        平台无关性是由JAVA虚拟机(JVM)支持的。java程序与平台无关,但是java虚拟机与平台是相关的。JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的,因为有了不同的JVM,所以同一个Java程序在 三个不同的操作系统中都可以执行。不同的操作系统应用不同的虚拟机,因为有了可以应用在不同平台的不同的的虚拟机,所以JAVA 程序在任何平台都可以运行,这就是JAVA 的平台无关性。

JAVA 概述_第1张图片

  5.支持网络编程

  6.多线程机制

          多线程即一个进程里由多个进程,这可以进一步提高CPU 的利用率,进一步提升程序执行效率。

  7.动态的内存管理机制

  8.安全性

        一是严格遵循面向对象的规范,即封装了数据细节,只提供接口给用户,增加了数据级的安全性;二是无指针运算,增加了内存级的运算;三是数组边界检查,有效防止了缓存溢出等安全漏洞;四是强制类型转换,使非同类型的对象之间不能进行转换;五是语言对线程安全的支持;六是通过编译器、检验器、类装载器自动建立安全策略。

四、体系结构

  JAVA 语言由JAVA SE、JAVA EE和JAVA ME三个版本,其中:

  JAVA SE 是JAVA 标准版语言,它里面包含了JAVA的核心类,如System类等等。

  JAVA EE 是JAVA 企业版语言,它包含SE里的类,还有用于企业开发的类,如Servlet,JSP等。主要是指后端。

  JAVA ME是JAVA 微缩版,它包含SE中的部分类,主要用于消费类电子产品的开发,如机顶盒等等,如今已被安卓开发所代替。

五、运行机制

  JAVA 运行的核心是JVM。

  编译器JDK 将源代码(.java)文件编译成字节码(.class)文件,再经过JVM 翻译成不同平台支持的机器码,从而实现一次编译,随处运行。

JAVA 概述_第2张图片

六、运行环境配置

  1.集成开发工具包JDK的安装

    JDK里包含了各种工具(编译工具),运行时环境(运行时需要用到的类库),jvm(运行的虚拟环境)。

    在Oracle官网上可以下载所需要的版本。

  2.环境变量的配置

    打开“属性”->“高级系统设置”->“环境变量”,找到PATH,在PATH 系统变量中增加你所下载JDK的bin目录的位置。

 

  3.验证

    打开命令行窗口(win+R),输入cmd,在出来的窗口输入java -version命令,若出现下图,则说明JDK已安装成功。

JAVA 概述_第3张图片

七、第一个JAVA 程序

  1.用记事本写一个java文件:

public class Hello{

public static void main(String [] a){

System.out.print("Hello World");

  }

}

  2.打开命令行窗口,首先命令行来到JDK所在位置 D:,接着输入"javac Hello.java",会出现下图:(javac 调用编译器生成 .class文件)

JAVA 概述_第4张图片

  3.再输入“java Hello",结果如图:(java 类名 运行java程序)

JAVA 概述_第5张图片

此时JAVA 程序就运行成功啦!

注意!用记事本写的文件名要和类名一致呦!

你可能感兴趣的:(java,jvm,开发语言,1024程序员节)