柏竹 柏竹
首页
后端
前端
  • 应用推荐
关于
友链
  • 分类
  • 标签
  • 归档

柏竹

奋斗柏竹
首页
后端
前端
  • 应用推荐
关于
友链
  • 分类
  • 标签
  • 归档
  • Java基础

    • Java认识
      • Java 发展史
      • Java 体系
      • Java 特性
      • Java跨平台原理
      • JVM 与 GC
        • JVM Java虚拟机
        • GC 垃圾回收器
      • JDK 与 JRE
      • 环境变量
    • 面向对象概述
    • Java API
    • Java三大特性
    • Java类的高级特性
    • Java异常
    • Swing程序设计
    • Java集合类
    • Java I/O
    • Java反射
    • 枚举
    • 泛型
    • Java线程
    • Java网络通信
    • Java事件
    • AWT绘图
    • Java网页访问
    • XML&JSON
    • Java注解
  • JavaWeb

  • 拓展技术

  • 框架技术

  • 数据库

  • 数据结构

  • Spring

  • SpringMVC

  • SpringBoot

  • SpringClound

  • Ruoyi-Vue-Plus

  • 后端
  • Java基础
柏竹
2020-02-18
目录

Java认识

# Java认识

# Java 发展史

  • 1991年 诞生了Java前世语言 “OaK”
  • 1995年 由Oak语言 更至为 “Java”
  • 1996.1 SUN公司推出 JDK1.0 开发工具&运行环境(标志成为独立开发工具)
    • JDK1.0:核心API、集成API、用户界面API、发布技术、Java虚拟机(JVM)、Applet、AWT
  • 1997.2 SUN公司紧接推出 JDK1.1
    • JDBC、JavaBeans、RMI、JAR文件格式、Java内部类&反射
  • 1998.12 推出JDK1.2-企业版J2EE发布
    • JDK1.2:Swing、Java IDL、EJB、Java Plug-in 等,添加了 strictfp 关键字和 Collections 集合类
  • 1999.4 SUN公司 收购 HotSpot公司发布的虚拟机
  • 1999.6 SUN公司把Java体系划分方向&不同的供应商API接口(最主要的里程碑)
    • J2ME(微型版),应用于移动、无线及有限资源的环境
    • J2SE(标准版),应用于桌面环境
    • J2EE(企业版),应用于基于 Java 的应用服务器
    • Java Core API:Java 核心类库
    • Java Optional API:对之前 API 的扩充
    • 特殊 API:由特殊厂商或组织提供的 API
  • 2000.5 JDK1.3、JDK1.4、J2SE1.3 发布
    • JavaSE1.3:数据库、WEB、网络、图形、多媒体、电话、影像等信息技术领域
  • 2002.2 J2SE1.4发布,接口和类多了60%+
    • J2SE1.4:XML支持、安全套接字(Socket)支持(通过 SSL 与 TLS 协议)、全新的 I/OAPI、 正则表达式、日志与断言
  • 2004.9 J2SE1.5发布,J2SE1.5 更名至 Java SE5.0(内部版本1.5.0)
    • Java SE 5.0(J2SE1.5):泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化 I/O 及可变参数
  • 2005.6 Java SE6 发布,集体更名
    • J2EE 更名为 JavaEE
    • J2SE 更名为 JavaSE
    • J2ME 更名为 JavaME
  • 2011.7 Java SE7 发布,SUN公司 收购 Oracle
    • Java SE7:二进制整数、支持字符串的 switch 语句、棱形语法、多异常捕抓、自动关闭资源的 try 语言等新特性
  • 2014.3 Oracle公司 发布 Java SE8
    • Java SE8:Lambda 表达 式、流式编程等大量新特性
  • 2017.9 Oracle公司 发布 Java SE9 ,强化Java模块化系统
    • Java SE9:语言更轻量化,更高效、 GI 垃圾回收器
  • 2018.3 Java SE10 发布。包垃圾收集器改善、GC 改进、性能提升、线程管控
  • 2018.9 Java SE11 发布。ZGC、Http Client 等重要特性,一共包含 17 个 JEP
  • 2019.3 Java SE12 发布
  • 2019.9 Java SE13 发布。添加了“文本块”功能

# Java 体系

Java SE:Java Platform,Standard Edition 标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案。

Java EE:Java Platform,Enterprise Edition 企业版:以企业为环境而开发应用程序的解决方案

Java ME :Java Platform, Micro Edition 微型版:致力于消费产品 和嵌入式设备的最佳解决方案

# Java 特性

  • 面向对象
  • 平台无关性。与平台无关(跨平台)的语言。(它提供了在不同平台下运行的解释环境)
  • 简单性。健壮的语言,吸收了 C/C++语言的优点
  • 安全性。(自动回收垃圾,强制类型检查,取消指针)

# Java跨平台原理

# JVM 与 GC

# JVM Java虚拟机

虚拟机(Java Virtual Machine) JVM

JVM 可以理解成一个可运行 Java 字节码的虚拟计算机

  • 解释器组件,可以实现 Java 字节码和计算机操作系统之间的通信
  • 对于不同的运行平台,有不同的JVM

# GC 垃圾回收器

垃圾回收器(Garbage Collection) GC

  • 不再使用的内存空间应当进行回收-垃圾回收
  • 在 C/C++等语言中,由程序员负责回收无用内存
  • Java 语言消除了程序员回收无用内存空间的责任
  • JVM 提供了一种系统线程跟踪存储空间的分配情况
  • 并在 JVM 的空闲时,检查并释放那些可以被释放的存储空间
  • 垃圾回收器在 Java 程序运行过程中自动启用,程序员无法精确控制和干预

# JDK 与 JRE

Java SE 组成概念图

  • JDK(Java Development Kits) Java 开发工具集

    用来开发Java程序的,针对java开发者(JDK是整个JAVA的核心)

  • JRE(Java Runtime Environment)Java 运行时环境 JVM需要调用解释所需要的类库lib。JRE里面有两个文件夹bin和lib,这里可以认为bin就是JVM,lib就是JVM所需要的类库,而JVM和lib合起来就称为JRE(JRE包含JVM)

JRE主要功能:

  • 加载代码:由类 加载器(class loader)完成
  • 校验代码:由 字节码校验器(byte code verifier)完成
  • 执行代码:由 运行时解释器(runtime interpreter)完成

JDK根路径文件明细:

  • bin: 存放JDK各种工具命令(如:javac、java命令等
  • db: 安装 Java DB 的路径
  • include: 部分平台特定的头文件
  • jre: 运行 Java程序的必要环境
  • lib: 该路径下的JDK工具命令的实习执行程序

# 环境变量

环境变量相当于 人们生活所需要依赖的东西,比如 鱼的生存离不开水

输入命令 时需要配好环境的路径的前提 才可以使用执行(外部命令) 或者 该路径是已经进入环境 也可以执行(内部命令)

外部命令 需要在系统变量“Path”追加路径 才进行执行(追加后加分号';')

#Java
上次更新: 2023/03/12, 00:43:49

面向对象概述→

最近更新
01
HTTPS自动续签
10-21
02
博客搭建-简化版(脚本)
10-20
03
ruoyi-vue-plus-部署篇
07-13
更多文章>
Theme by Vdoing | Copyright © 2019-2024 | 桂ICP备2022009417号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式