「白皮书」关键术语

  • 简单性(C++--)
  • 面向对象
  • 分布式
  • 健壮性
  • 安全性
  • 体系结构中立
  • 可移植性
  • 解释型
  • 高性能
  • 多线程
  • 动态性

Java 发展历程

  • SUN公司——Stanford University Network
  • 主设计者:James Gosling
  • 1996年初 - 发布 Java 1.0
  • Java 2, JDK 1.2 有了很大的改变 - 更加接近“一次编写,随处运行”的承诺
  • J2SE 5.0 得到了进一步改进 - 泛型、(以下几项受 C# 启发) foreach、自动装箱、注解
  • 2014年 - 发布 Java 8 - 重大改变:提供了一种「函数式」编程方式,可以容易地表述并发执行的计算

Java 主要技术分支

  • Java SE

    • Java 2 Platform, Standard Edition
    • 前身:J2SE,2005年更名为Java SE
  • Java EE(主要应用)
    • Java 2 Platform, Enterprise Edition
    • 前身:J2EE,2005年更名为Java EE
  • Java ME(嵌入式)
    • Java 2 Platform, Micro Edition
    • 前身:J2ME,2005年更名为Java ME

JVM, JRE, JDK

  • JVM(Java Virtual Machine) < JRE(Java Runtime Environment) < JDK(Java Development Kit)

「跨平台」与「解释执行」

  • 早期的 Java是解释型的。现在 Java 虚拟机使用了即时编译器,因此采用 Java 编写的“热点”代码其运行速度与 C++ 相差无几,有些情况下甚至更快。

Java 开发环境

  1. Path 的主要功能是设置 JDK 的可执行命令
  2. classpath 主要是在执行的时候起作用,告诉JVM类的保存路径,一般(默认)设置为.(cmd设置命令:set classpath=.
    注意:classpath 只在 java 命令时起作用,对 javac 无作用

一些术语

  • 当Oracle为解决一些紧急问题做出某些微小的版本改变时,将其称为更新。例如:Java SE 8u31是Java SE 8的第31次更新,它的内部版本号是1.8.0_31。更新不需要安装在前一个版本上,它会包含整个JDK的最新版本。

「JavaSE 重新出发」01. Java介绍的更多相关文章

  1. 「JavaSE 重新出发」02.01 基本数据类型

    基本数据类型 1. 整型 注意:Java 没有任何无符号(unsigned)形式的 int.long.short 或 byte 类型. 不同进制的表示形式: 十六进制数值有一个前缀0x或0X(如0xC ...

  2. 「JavaSE 重新出发」05.03.01 利用反射分析类

    在 java.lang.reflect 包中有三个类 Field, Method 和 Constructor 分别用于描述类的域.方法和构造器. Class 类中的 getFields, getMet ...

  3. 「JavaSE 重新出发」05.01.02 hashCode 方法、toString 方法

    hashCode 方法 散列码(hash code)是由对象导出的一个整形值(可以是负数).其是没有规律的,如果x与y是两个不同的对象,则x.hashCode()与y.hashCode()基本上不会相 ...

  4. 「JavaSE 重新出发」05.01.01 equals 方法

    equals 方法示例 // 代码来自<Java核心技术 卷I>P167 // 父类 public class Employee{ ... public boolean equals(Ob ...

  5. 「JavaSE 重新出发」05.01 继承

    继承 一个对象变量可以指示多种实际类型的现象被称为多态(polymorphism). 在运行时能够自动地选择调用哪个方法的现象称为动态绑定(dynamic binding). 如果是private方法 ...

  6. 「JavaSE 重新出发」02. 数据类型与运算符

    「TOC」 Java 程序基本要求 Java 数据类型 基本数据类型 复合数据类型 运算符 逻辑运算符 位运算符 运算符优先级 Java 程序基本要求 public class : 一个 Java 文 ...

  7. 「JavaSE 重新出发」05.03.02 在运行时使用反射分析对象

    在编写程序时,如果知道想要查看的域名和类型,查看指定的域是一个很容易的事,而利用反射机制可以查看在编译时还不清楚的对象域. java Employee tank = new Employee(&quo ...

  8. 「JavaSE 重新出发」05.03 反射

    能够分析类能力的程序称为反射(reflection). 反射库(reflection library)提供了一个非常丰富且精心设计的工具集,以便编写能够动态操纵 Java 代码的程序. 反射机制可以用 ...

  9. 「JavaSE 重新出发」05.02 泛型数组列表、包装类

    泛型数组列表 ArrayList 是一个采用类型参数(type parameter)的泛型类(generic class). java ArrayList<Employee> staff ...

随机推荐

  1. Centos7 minimal 系列之Redis(五)

    一.Redis安装 1.1 .进入/usr/local 创建redis文件夹(mkdir)方便统一管理 1.2.下载redis $ wget http://download.redis.io/rele ...

  2. SpringBoot(七) SpringBoot中的缓存机制

    随着时间的积累,应用的使用用户不断增加,数据规模也越来越大,往往数据库查询操作会成为影响用户使用体验的瓶颈,此时使用缓存往往是解决这一问题非常好的手段之一.Spring 3开始提供了强大的基于注解的缓 ...

  3. visio中如何取消跨线和去掉页边距

    比较来说,写论文visio和inkscape都不可缺少. 比如visio跨线的问题,已经遇到过两次忘记了.这次截个图作为记录.其实就是在“设计”一栏里,把连接线里面的跨线显示的对勾去掉即可. *** ...

  4. 防范CSRF(三)

    除了可以更改微软默认的cookie的名字外,还可以更改默认的加密方法.继承IAntiForgeryAdditionalDataProvider接口,实现里面的方法即可. 采用的加密方法有加盐和使用时间 ...

  5. CADisplayLink & NSTimer

    屏幕刷新与UI更新不同步:屏幕刷新由硬件(+GPU)保证,UI更新由软件(CPU保证). 出现卡顿的原因是软件的计算速度跟不上硬件的刷新速度. 一 简介 1 所在框架 CADisplayLink和其它 ...

  6. iproute2+tc notes

    iproute2+tc notes The iproute2+tc package allows access to the variety of neat new networking featur ...

  7. 省选模板_STL

    目录: 1. multiset 2. reverse 1.multiset namespace STL{ int main(){ multiset<int>::iterator s; mu ...

  8. BZOJ 3527: [Zjoi2014]力 FFT_卷积

    Code: #include <cmath> #include <cctype> #include <cstdio> #include <cstring> ...

  9. NodeJS踩坑实录

    nodejs的常用api url 主要是配置一系列和路径相关的信息 url.parse(urlString[, parseQueryString[, slashesDenoteHost]]) 将一个U ...

  10. vue 阿里云上传组件

    vue 阿里云上传组件 Vue.js上传图片到阿里云OSS存储 测试项目git地址 本测试项目启动方法 示例链接 组件配置项 实践解释 本文主要介绍如何 在vue项目中使用web 直传方式上传阿里云o ...