1、Java语言简介

  Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性。Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程动态的语言。

2、Java平台三大体系

  Java分为三个体系,分别为Java SE(J2SE,Java2 Platform Standard Edition,标准版);JavaEE(J2EE,Java 2 Platform, Enterprise Edition,企业版),用于构建大型企业级应用或网站;Java ME(J2ME,Java 2 Platform Micro Edition,微型版),用于移动终端。

3、Java发展历程

  1995年5月23日,(诞生) Sun公司推出,最初称为Oak,是1991年为嵌入式芯片设计的,后更名为Java;

  1996年1月, 第一个JDK——JDK1.0诞生;

  1997年2月18日,JDK1.1发布;

  1999年6月,SUN公司发布Java的三个版本:标准版、企业版和微型版;

  2000年5月8日,JDK1.3发布;5月29日,JDK1.4发布;

  2009年04月20日,Oracle收购Sun,取得Java的版权;

  2011年7月28日,甲骨文发布Java 7.0的正式版;

  2014年3月19日,甲骨文公司发布Java 8.0的正式版。11月,甲骨文公司发布了Java 9.0的新特性

4、核心概念:JVM、JDK、JRE

  JVM:Java Virtual Machine(Java虚拟机)

  JDK:Java Development Kit(Java开发工具包)

  JRE:Java Runtime Environment(Java运行环境)

  

  三者的关系:JDK包含JRE,JRE包含JVM

  

  JVM详细:

  Java的源代码是.java文件,是不可执行的,需要通过编译器编译成与平台无关的.class字节码文件,再通过解释器解释才可以执行,而JVM包括了编译器和解释器。即Java程序需要JVM才可以运行。

  JRE详细:

  JRE(Java Runtime Environment,Java运行环境),是运行Java程序必须的环境集合,包含JVM标准实现及Java核心类库,仅能完成Java的运行,不能对Java进行编译、调试等。

  JRE有独立的版本,如果只需要运行Java程序,安装JRE就可以了。

  

  JDK详细:

  JDK(Java Development Kit,Java开发工具包)是Java语言的软件开发工具包(SDK),是面向Java开发者发布的Java套件。

  JDK包含的基本组件有:编译器、Jar打包工具、Javadoc文档生成器、Debug调试器、头文件生成器、反汇编器、监控工具等。

  JDK包含了完整的JRE,如果安装了JDK,就不用安装JRE了,因为JRE已经集成在JDK里面了

    

 

Java(一)——认识Java语言的更多相关文章

  1. 深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

    作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language- ...

  2. java安全沙箱(三)之内置于Java虚拟机(及语言)的安全特性

    java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及J ...

  3. [Java入门笔记] Java语言简介

    前言 学习Java有一段时间了,但是一直缺少一个系统的思想,现在重新通过书籍中.网上的文章,视频等资料,整理与回顾Java的知识点. 言归正传,让我们先从了解Java语言开始. Java语言的由来 J ...

  4. java发展史与java的语言特性

    概述: Java 体系比较庞杂,功能繁多,这也导致很多人在自学 Java 的时候总是感觉无法建立 全面的知识体系, 无法从整体上把握Java 的原因. 在这里我们先简单了解一下Java 的版本. 具体 ...

  5. [转]深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

    以下内容转自: 作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-l ...

  6. Java环境搭建及语言基础

    JRE和JDK JRE:Java Runtime Environment,java运行环境. JDK:Java Development Kit,java开发工具包. 使用JDK开发java程序,交给J ...

  7. [java学习笔记]java语言核心----面向对象之this关键字

    一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理:         代表的是当前对象.         this就是所在函数 ...

  8. [java学习笔记]java语言核心----面向对象之构造函数

    1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用:                给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...

  9. Java学习笔记:语言基础

    Java学习笔记:语言基础 2014-1-31   最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...

  10. Java编写的C语言词法分析器

    Java编写的C语言词法分析器 这是java编写的C语言词法分析器,我也是参考很多代码,然后核心代码整理起来,放在QQ空间和博客上,目的是互相学习借鉴,希望可以得到高手改进.这个词法分析器实现的功能有 ...

随机推荐

  1. 一天时间用OpenFire打造自己的IM聊天工具

    Openfire采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议.Openfire安装和使用都非常简单,并利用Web进行管理.单台服务器可支持上万并发用户. 好友界面 ...

  2. caffe版faster-RCNN环境搭建

    faster-rcnn提出论文: <Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks& ...

  3. Hive UDF开发-简介

    Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以. Hive的UDF开发只需要重构UDF类的evaluate函数即可.例 ...

  4. 关于SharePoint 讨论板的一些知识

    关于SharePoint 讨论板的一些知识         近期公司项目可能要用到讨论板.需求是这种:         怎样在回复中仅仅让查看登陆者和讨论主题公布者的信息.         比方我公布 ...

  5. git 强制覆盖,分支合并

    强制合并 git fetch --all && git reset --hard origin/master && git pull 合并代码 git commit - ...

  6. 【网络协议】TCP的流量控制机制

    一般来说,我们总是希望传输数据的更快一些,但假设发送方把数据发送的非常快.而接收方来不及接收,这就可能造成数据的丢失.流量控制就是让发送方的发送速率不要太快.让接收方来得及接收. 对于成块数据流,TC ...

  7. cygwin配置个人环境,android模拟器root映象和Babun

    零.Windows命令行个人设置 @echo off :: Temporary system path at cmd startup ::set PATH=%PATH%;"C:\Progra ...

  8. java: private, protected, public

    这三个 「可访问修饰符」,是一个老生常谈的话题了.在 C++ 中也有类似的概念. 按其修饰对象的不同,分为几种用法小记一下: 用于类 只有 public 可以修饰类:private 和 protect ...

  9. ReboletricSample工程搭建

    受到  Just Say No to More End-to-End Tests 文章链接:http://googletesting.blogspot.tw/2015/04/just-say-no-t ...

  10. 基于LRU Cache的简单缓存

    package com.test.testCache; import java.util.Map; import org.json.JSONArray; import org.json.JSONExc ...