1. 历史

1.1. Sun, Green Project, 90年代初,为机顶盒提供一个统一的语言层,oak--》Java, James Gosling, Sun World

1995:JAVA 1.0 write once, run anywhere

1996:JDK 1.0(Java Development Kit),包含类库、开发工具(javac)以及JVM(Sun Classic VM);

1997: JDK 1.1,JAR文档格式、JDBC、JavaBeans

1998: JDK 1.2 Sun分拆Java技术为三个方向:J2SE(Standard Edition) J2EE(Enterprise Edition) J2ME:(Mobile);

  代表技术:EJB, JAVA Plugin, Swing, JIT

1999: 收购Hotspot VM

2000: JDK 1.3

2002: JDK 1.4

2006: Sun开源了Java技术,GPL,建立了一个称OpenJDK组织;但是仍然保留了一些商业代码

  并改名为 Java 2 SE

  Java 2 EE

  Java 2 ME

2. Java的体系结构规范:

  Java编程语言

  Java Class文件格式

  Java API

  Java VM

  JVM的核心组件:

    Class Loader

    执行引擎

  Java编程语言的主要特性:

    纯面向对象的编程、多线程、结构化错误处理、自动垃圾收集、动态链接、动态扩展

    GC:Garbage Collector

  JVM的运行时区域:

    方法区:线程共享;用于存储被JVM加载的class信息、常量、静态变量、方法等;持久代;

    堆:是jvm所管理的内在中的最大的一部分,也是GC管理的主要区域;主流的垃圾收集算法基于分代收集的机制;

    Java栈:现成私有,存储现成自己的局部变量;

    PC寄存器:线程私有的内存空间,程序的指令指针;

    本地方法栈;

  Java 2 SE: JDK,如:OpenJDK, Oracle JDK

  Java 2 EE: JDK + 企业级类库(Servlet, JSP, EJB, JMS, JMX, javaMail)商业实现:Weblogic,WebSphere,Oc4j

  Servlet:

  JSP:基于jasper,将其转换为纯java代码,格式为servlet

  Web Container:

    Servlet Container:

      Java Web Server: JWS

      ASF: jServer

      Tomcat: 结合JWS和jServer,产生了Tomcat

        2001:tomcat 4.x, catalina

    实现:

      商业版:

        Websphere(IBM)

        Weblogic(Oracle)

        Oc4j

        Glassfish

        Geronimo

        jOnAS

        jBoss

      开源版:

        Tomcat

        jetty

        Resin

3. JDK安装

3.1. RPM:

  java-1.7.0-openjdk.x86_64, java-1.7.0-openjdk-devel.x86_64

3.2. Oracle JDK

  

【JAVA】【Basic】概念的更多相关文章

  1. Java多线程概念简介 多线程中篇(一)

    Java的线程与操作系统的线程   在线程的相关介绍中,有讲到“线程的实现”分为三种:内核支持,用户级以及两者混合.(这只是一种简要的分类) Java线程在JDK1.2之前,是用户线程实现的 而在JD ...

  2. -1-5 java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁 sleep()和wait()方法的区别 为什么wait(),notify(),notifyAll()等方法都定义在Object类中

     本文关键词: java 多线程 概念 进程 线程区别联系 java创建线程方式 线程组 线程池概念 线程安全 同步 同步代码块 Lock锁  sleep()和wait()方法的区别 为什么wait( ...

  3. 一 JAVA整体概念以及安装部署

    JAVA 基本概念  JVM(JAVA virtual machine)java虚拟机,是java的能跨平台的核心,java的跨平台实现,就是在各种系统中布置JVM,然后java应用运行在JVM中,相 ...

  4. Java分层概念(转)

    Java分层概念(转) 对于分层的概念,似乎之间简单的三层,多了,就有点难以区分了,所以收藏了这个. ervice是业务层 action层即作为控制器 DAO (Data Access Object) ...

  5. Java基础概念语法

    Java基础概念语法 注释 单行注释 //行注释说明 多行注释 /* 多行注释说明 */ 文档注释 /** *@author 程序的作者 *@version 源文件的版本 *@param 方法的参数说 ...

  6. JAVA反射概念及使用详解(超详细)

    JAVA反射概念及使用详解 一.什么是反射? 反射:框架设计的灵魂 框架:半成品软件.可以在框架的基础上进行软件开发,简化编码 反射:将类的各个组成部分封装为其他对象,这就是反射机制 ​ 好处: ​ ...

  7. 加深理解Java异常概念并熟记5个最常见的运行时异常

    加深理解Java异常概念并熟记5个最常见的运行时异常 说明Error与Exception的联系和区别有哪些? 列举最常见的5个运用时异常. 1.Error和Exception的联系和区别: Error ...

  8. JAVA理论概念大神之概念汇总

    我个人觉得,JAVA之所以能够经久不衰,有一个很重要的原因就是:JAVA的理论总是给人一种,虽然不知道是什么,但是感觉很厉害的样子.就单是这一点,他就已经超越许多其他语言了,至少吹牛的时候谈资总是很多 ...

  9. 转!!java泛型概念(泛型类,接口,方法)

    一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(Stri ...

  10. Java基本概念(未完)

    仅简单总结~辅助快速回忆~ 一.JVM 1,Java类加载机制 Java程序由多个类文件组成,按需加载. Java的动态扩展是由运行期动态加载和动态链接实现的.——动态绑定,多态. 加载步骤: 1)装 ...

随机推荐

  1. vm workstation pro 安装centos7

    workstation pro 下载地址 划到页面下方点击下载 安装教程 激活码 16版本 ZF3R0-FHED2-M80TY-8QYGC-NPKYF 15版本 FG78K-0UZ15-085TQ-T ...

  2. Java使用assert断言

    Java1.4后新增assert关键字 Idea中开启assert断言 使用 assert boolean表达式 assert boolean表达式 : 错误提示信息 例子 public static ...

  3. 组件通信之全局事件总线 & 消息订阅发布

    全局事件总线 介绍 一种组件间通信的方式,适用于任意组件间通信. 在使用全局事件总线之前需要一些知识准备 所有组件实例的原型对象的原型对象就是 Vue 的原型对象,即VueComponent.prot ...

  4. C# | VS2019连接MySQL的三种方法以及使用MySQL数据库教程

    本文将介绍3种添加MySQL引用的方法,以及连接MySQL和使用MySQL的教程 前篇:Visual Studio 2019连接MySQL数据库详细教程 \[QAQ \] 第一种方法 下载 Mysql ...

  5. 求求你们了,别再写满屏的 if/ else 了!

    为什么我们写的代码都是 if-else? 程序员想必都经历过这样的场景:刚开始自己写的代码很简洁,逻辑清晰,函数精简,没有一个 if-else,可随着代码逻辑不断完善和业务的瞬息万变:比如需要对入参进 ...

  6. 常见的yaml写法-CronJob

    CronJob其实就是在Job的基础上加上了时间调度,我们可以:在给定的时间点运行一个任务,也可以周期性地在给定时间点运行.这个实际上和我们Linux中的crontab就非常类似了.一个CronJob ...

  7. python3 在webelement对象里面获取元素路径的方法

    一. 在webelement对象里面使用查找Xpath 查找时,必须使用.指明当前节点 food = driver.find_element_by_id('food') eles = food.fin ...

  8. 96-00年CPU功耗感知调度研究

    最近读了一些1996-2000年的通过调度来降低cpu能耗的文章,主要文章有[1] [2] [3] [4] [5], 简单总结一些该时期单核CPU功耗感知的调度策略. 该时期还出现了很多关于低功耗电路 ...

  9. PAT A1024题解——高精度大数相加模板

    PAT:A1024 Palindromic Number A number that will be the same when it is written forwards or backwards ...

  10. WinForm训练一_改变窗体大小

    1 //引用系统命名空间 2 using System; 3 //项目命名空间 4 using System.Collections.Generic; 5 using System.Component ...