一、Java是什么

Java是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言。

二、Java的发展简史

在20世纪90年代初,Sun公司的工程师James Gosling等人想开发一种基于智能家用电器上运行的语言,用来解决电视机、微波炉、电话等家电之间的通信控制等问题,并将这种语言命名为Oak,但由于有线电视业界认为Oak给予用户太多的控制权,Oak几乎没有任何市场,面临夭折的危险。

然而,塞翁失马,焉知非福!随着互联网和浏览器(Browser)技术的发展壮大,用改进后的Oak语言编写的一些小程序(如动画、游戏等)风靡互联网,Oak起死回生。当时由于Oak这个商标已被注册,于是采用了Oak工程师们经常喝的一种产自印尼爪哇岛的咖啡为名,即Java。

1995年5月Sun公司正式发布了Java语言,1996年1月,Java的第一个开发工具包JDK 1.0发布。1998年12月,JDK 1.2发布,这是Java发展历程中一个革命性的版本,它将Java分成了3个版本:J2SE、J2EE和J2ME。

其中:

· Java 2标准版(Java 2 Standard Edition,J2SE)是整个Java技术的核心和基础,为用户提供了开发与运行Java应用程序的编译器、基础类库及Java虚拟机等。

· Java 2企业版(Java 2 Enterprise Edition,J2EE)是Java语言中最活跃的体系之一,它提供了一套完整的企业级应用开发解决方案。J2EE不仅仅是指一种标准平台(Platform),更多的表达着一种软件架构和设计思想。

· Java 2微型版(Java 2 Micro Edition,J2ME)是用于移动设备、嵌入式设备上Java应用程序的开发,包括虚拟机和一系列技术规范。

从JDK 1.2开始到JDK 1.5,人们习惯上都把它称为Java 2。直到2005年6月,在JavaOne大会上Sun公司发布了Java SE 6,Java的各种版本更名取消了其中的数字“2”:J2SE更名为Java SE(Java Platform Standard Edition),J2EE更名为Java EE(Java Platform Enterprise Edition),J2ME更名为Java ME(Java Platform Micro Edition)。

三、Java特点

简单

面向对象

跨平台性

解释型

多线程

安全

动态

四、Java环境搭建

什么是JRE,JDK

JRE(Java Runtime Environment Java运行环境)

JRE包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

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

JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。

其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等

简单而言:使用JDK开发完成的java程序,交给JRE去运行。

下载Java JDK

登陆www.oracle.com

选择Downloads

点击JavaSE

下载JDK

选择for windows x86的JDK

安装

安装过程比较简单,一直下一步,中间选择好自己的JDK和JRE目录就可以了,而且JRE其实已经存在在JDK目录中,不安装JRE亦可。

由于JDK是绿色的,所以安装好的目录可以直接拷贝到其他机器使用,只不过安装时会在注册表中注册,有一个自动更新的功能,如果不装,则不会自动更新,但不影响使用。

配置环境变量

普遍配置方法

右击我的电脑,选择属性,选择里面的高级系统设置,然后如下图,选择找到环境变量里的path,加上自己的JDK\bin的目录,加到里面

打开dos命令行,输入javac,回车,如果出现下图,表示设置成功,可以直接使用了


环境变量配置的一个简单技巧

可以新建一个变量设置成JDK的目录,以便以后修改


配置临时环境变量

Set path是临时配置方式,只作用于本窗口或者使用start命令开启的新窗口。

Java笔记(一)……概述的更多相关文章

  1. Java笔记:Java集合概述和Set集合

    本文主要是Java集合的概述和Set集合 1.Java集合概述 1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指定了数组长度,这个数组长度就是不可变的,如果需要保存数量变化的数据,数组 ...

  2. Java:多线程概述与创建方式

    目录 Java:多线程概述与创建方式 进程和线程 并发与并行 多线程的优势 线程的创建和启动 继承Thread类 start()和run() 实现Runnable接口 实现Callable接口 创建方 ...

  3. Effective Java笔记一 创建和销毁对象

    Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...

  4. Java Reference简要概述

    @(Java)[Reference] Java Reference简要概述 Reference对象封装了其它对象的引用,可以和普通的对象一样操作. Java提供了四种不同类型的引用,引用级别从高到低分 ...

  5. java笔记00-目录

    --2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:

  6. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  7. 转 Java笔记:Java内存模型

    Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...

  8. Notes 20180506 : Java程序设计语言概述

    2.Java程序设计语言概述 如果对于开发语言的排行榜有所关注的话,那么会发现很长一段时间以来Java都是位居榜首的高级开发语言,作为一个Java开发者,为此感到骄傲的同时也深感忧虑,骄傲的是自己接触 ...

  9. servlet(6) - servlet总结 - 小易Java笔记

    垂阅前必看: 这都是我总结的我觉得是学习servlet应该掌握的,我在学习期间也做了一个博客项目来让所学的知识得以巩固.下面就是博客项目链接.前面的servlet相关的笔记总汇,还有就是我把觉得在学习 ...

随机推荐

  1. 写 一个PHP脚本遇到的问题总结

    在项目中,因为之前的人员,基础数据没有处理好,后面需要写一个脚本来处理这个问题,经验少,总结如下: 1.在linux下直接连接跑处理MySQL数据的脚本,要用PDO的方式连接数据库,长时间在框架中处理 ...

  2. 解决php json_encode 出现的中文转码、乱码问题

    // 防止json中文转码 function jsonEncodeWithCN($data) { return preg_replace("/\\\u([0-9a-f]{4})/ie&quo ...

  3. Style 的优先级

    Dependency Property(简称DP)是WPF的核心,Style就是基于Dependency Property的,关于DP的内幕,请参见深入WPF--依赖属性.Style中的Setter就 ...

  4. RS232与RS485时序分析

    转载于:RS232,RS485波形分析 经常遇到初学者,对单片机串行通讯出了问题不知道如何办的情况.其实最有效的调试方法是用示波器观察收发数据的波形.通过观察波形可以确定以下情况: 是否有数据接收或发 ...

  5. 深入浅出分析C#接口的作用

    1.C#接口的作用 :C#接口是一个让很多初学C#者容易迷糊的东西,用起来好像很简单,定义接口,里面包含方法,但没有方法具体实现的代码,然后在继承该接口的类里面要实现接口的所有方法的代码,但没有真正认 ...

  6. LCA——倍增求解

    LCA,即最近公共祖先,用于解决树上两点的最近公共祖先问题. ; lca(1,2)=3;(原谅我的绘画水平) LCA的求解有三种算法(我知道的)——tarjan,倍增,线段树(我只会两种),NOIp之 ...

  7. js常见事件

    1.onblur:(使用在表单元素中,当元素失去焦点的时候执行) 2.onchange:(使用在表单元素中,当某些东西改变是执行) 3.onclick:(鼠标点击一个元素时执行) 4.ondblcli ...

  8. Python属性、方法和类管理系列之----__slots__属性

    一句话说明 __slots__是用来限制实例的属性的,__slots__可以规定实例是否应该有__dict__属性:__slots__不能限制类的属性. 只有__slots__列表内的这些变量名可赋值 ...

  9. Mysql不区分大小写

    mysql在windows下表名是不区分大小写的,但是在linux下是区分大小写的: 今天帮朋友解决安装到ubuntu系统下mysql不区分大小写的问题,最初在/etc/my.cnf文件中的[mysq ...

  10. 用JavaScript获取一个超链接的绝对URL地址

    对于Web程序员来说,处理简单的URL格式也许会成为一场噩梦.试想一下,一个网址里有很多组成部分都会影响你对它的解析方法: 是否以/字符开头 是否以//开头 是否以?号开头 是否以#号开头 …等等 当 ...