java语言的特点

1.面向对象

    1.1 两个基本概念:类、对象

     1.2 三大特性:封装、继承、多态


2.健壮性

    吸收了c/c++语言的优点,但是去掉了影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制


3.跨平台性

    3.1 通过java语言编写的应用程序在不同的系统平台上都可以运行。

          Write once,Run Anywhere

     3.2 原理:只要在需要运行java应用程序的操作系统上,先安装一个java虚拟机(JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。不同的操作系统中JVM是不同的。


java两种核心机制

1.java虚拟机(Java Virtal Machine)

    JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。

    对于不同的平台,有不同的虚拟机

    java虚拟机机制屏蔽了底层运行平台的差别,实现了一次编译,到处运行。

2.垃圾收集机制(Garbage Collection)

   不再使用的内存空间应回收--垃圾回收。

    在c或C++等语言中,由程序猿负责回收无用内存。

    垃圾回收在java程序运行中自动进行,程序无法精确控制和干预。