1.Java概念

Java概念

 

1.1 什么是Java

  • Java是Sun Microsystems于1995年首次发布的一种编程语言和计算平台。
    • 什么是计算平台?
    • 计算平台是在电脑中运行应用程序(软件)的环境,包括硬件环境软件环境,一般系统平台包括一台电脑的硬件体系结构、操作系统、运行时库。

 

1.2.Java语言的特点:

  • 1、简单性:Java语言继承了C++语言的优点,去掉了C++中学习起来比较难的多继承、指针等概念,所以Java语言学习起来更简单,使用起来也更方便。

  • 2、面向对象:Java是一种面向对象的编程语言。

  • 3、分布性:Java设计成支持在网络上应用,它是分布式语言。所以只要用Java编写了一个程序,就可以到处应用。可以节省大量人力物力。

  • 4、编译和解释性:Java编译程序生成字节码,而不是通常的机器码,这使得Java开发程序比用其他语言开发程序快很多。

  • 5、稳健性:Java刚开始被设计出来就是为了写高可靠和稳健的软件的。所以用Java写可靠的软件很容易。目前许多第三方交易系统、银行平台的前台和后台电子交易系统等都会用Java语言开发。

  • 6、安全性:Java的存储分配模型是它防御恶意代码的主要方法之一。所以很多大型企业级项目开发都会选择用Java开发。

  • 7、可移植性(跨平台):Java并不依赖平台(跨平台),已编译的Java程序可以在任何带有JVM的平台上运行。

    • JVM:JVM全称为Java Virtual MAchine——Java虚拟机。Java程序的跨平台特性主要就是因为JVM实现的,JVM针对不同的操作系统,使用不同的映射规则,让其与操作系统无关,完成了跨平台。在编译java程序时会将写好的源程序通过编译器编译生成.class文件(又称为字节码文件),之后就是通过JVM内部的解释器将字节码文件解释成为具体平台上的机器指令执行,所以就可以实现java程序的跨平台特性。
    • JVM内部体系结构大致分为三部分:类装载器(ClassLoader)子系统运行时数据区执行引擎
  • 8、高性能:Java是一种先编译后解释的语言,所以它不如全编译性语言快。但Java设计者制作了“及时”编译程序,这样就可以实现全编译了。

  • 9、多线程性:它可以同时执行多个程序,能处理不同任务。

  • 10、动态性:Java语言设计成适应于变化的环境,它是一个动态的语言。

 

1.3.Java应用领域与发展前景:

  • Java主要分为三个版本:
    • JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版)
      • 面向对象开发方法
      • GUI图形用户界面编程
    • JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版)
      • 大型复杂的项目开发
      • 应用于大型web应用,如EAI、电子商务、电子政务等
    • JavaME(J2ME)(Java 2 Platform Micro Edition,java平台微型版)
      • 应用于移动通信、动漫设计等
  • JavaFX:多媒体动画编程,面向设计艺术人员的脚本语言

 

 

 

1.4.Java的核心机制:

  • Java虚拟机  JVM:读取并处理经编译的字节码.class文件,其规范定义了指令集、寄存器集、类文件结构、退栈、垃圾收集、内存区域。
  • 代码安全性检测(Code security):Java执行代码的时候,由JVM对运行的代码进行安全性检测,当进行一些非法操作的时候,比如修改一些系统设置的时候,JVM会发出警告。
  • 垃圾回收机制(Garbage collection):在c/c++语言中,由程序员负责回收无用垃圾,Java拥有自动进行垃圾回收的机制:
    •  1.系统级现场跟踪存储空间的分配情况
    •  2.在JVM空闲时,检查并释放哪些可被释放的存储器空间
    •  3.程序员无需也无法精确控制和干预该回收过程

 

 

1.5.Java程序工作原理:

 

 

  • 在进行Java编程之前,先需要写出源程序,此时为“*.java”文件类型,然后通过编译器进行编译,将源程序转换为字节码,此时的文件类型转变为“*.class”,并且此时的代码并不是计算机所能识别的“01”型代码。
  • 接着编译后的代码通过类装载器进行装载,然后字节码校验器对其进行校验,如果校验无误,则由解释器将其转换为“01”型代码,最后传送到操作系统平台上进行代码的正式执行。
  • 补充:Java编写的代码成功解释后,可放到各大操作平台上进行执行,例如Windows,Linux等等,不需要在另一平台上再次编译解释,这就是它所谓的“一次编译,处处执行”的特点。

 

 

1.6 Java开发环境(JDK=JRE+Tools工具

  • JDK(Java Development Kit):称为Java开发标准工具包,是一个编写Java的Applet小程序和应用程序的程序开发环境。
  • JDK是整个Java的核心,JDK中包含了Java运行环境JRE(Java Runtime Environment),一些Java开发工具(Javac/Java/Jdb等)Java的核心类库(Java API)。
  • 在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin中的就是JVM, lib 中则是JVM工作所需要的类库,而JVM和lib合起来就称为JRE。

 

 

1.7 Java运行环境(JRE=JVM+标准类库Java SE

  • JRE(Java Runtime Environment):Java运行时环境。是运行基于Java语言编写的程序所不可缺少的运行环境,也是通过它,Java 的开发者才得以将自己开发的程序发布到用户手中,让用户使用。

     

  • JRE中包含了JVM、runtime class libraries和Java application launcher,这些是运行Java程序的必要组件。其主要功能:加载代码(由class loader完成)、校验代码(由bytecode verifier完成)、执行代码(由runtime interpreter完成)

  • 与大家熟知的JDK不同,JRE是Java的运行环境,而不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对使用Java程序的用户。

 

1.8 JDK、JRE、JVM之间的关系?

JDK=JRE+开发工具集

JRE=JVM+JAVA SE标准类库

 

 

 

 

posted @ 2020-07-07 14:55  JAVA♡佳  阅读(150)  评论(0)    收藏  举报