乐趣区

关于java:JAVABasis-1java开发环境的介绍

1 前言

JAVA_Basis 这一工程是我对 java 学习的总结和积攒,明天是 2020 年 8 月 30 日,是我这一系列学习笔记的开始,心愿我能坚持下去,每天都能更新一篇,加油!

2 java 语言概述

java 官网

java 是一门面向对象的编程语言,其前身是 20 世纪 90 年代由詹姆斯·高斯林领导的小组为他们一个‘绿色我的项目’开发的 Oak 语言,1994 年 Oak 语言更名为 java 语言,随后 java 语言搭上互联网的慢车,失去了飞速的倒退,1996 年 1 月,Sun 公司公布了 Java 的第一个开发工具包(Java Development kit 1.0),这是 Java 倒退历程中的重要里程碑,标记着 Java 成为一种独立的开发工具。

Sun 公司于 1995 年推出

1991 年 sun 公司 James Gosling 等人开始开发 Oak 语言

1994 年,将 Oak 语言更名为 Java

1996 年取得第一笔投资 1 亿元

1998 年提出 jdk1.2,更名为 java2

之后推出 jdk1.3 jdk1.4

2005 年更名为 jdk5.0,进行了大幅的版本改良

2006 年 sun 公司发表将 Java 作为免费软件对外公布

2007 年 3 月起,全世界所有的开发人员均可对 Java 源代码进行批改

2007 年推出 jdk6.0

2009 年 4 月 Oracle 以 74 亿美元收买了 sun 公司

2011 年 7 月由 Oracle 正式公布 jdk7

2014 年 3 月正式公布了 java8

2.1 java 语言分类(JavaSE,JavaEE,JavaME)

JavaSE:

Java SE lets you develop and deploy Java applications on desktops and servers. Java offers the rich user interface, performance, versatility, portability, and security that today’s applications require.

Java SE 使您能够在台式机和服务器上开发和部署 Java 应用程序。Java 提供了当今应用程序所需的丰盛的用户界面,性能,多功能性,可移植性和安全性。

JavaEE

Java Platform, Enterprise Edition **(Java EE) is the standard in community-driven enterprise software. Java EE is developed using the Java Community Process, with contributions from industry experts, commercial and open source organizations, Java User Groups, and countless individuals. Each release integrates new features that align with industry needs, improves application portability, and increases developer productivity.

(Java EE)是规范的 Java EE 开发社区主导型企业软件。应用 Java Community Process, 与业内专家的奉献、商业和开源组织,Java 用户组, 和有数集体。每个版本集成新性能, 联合行业需要, 进步应用程序的可移植性, 并进步开发人员的生产力

JavaME:

Java Platform, Micro Edition (Java ME) provides a robust, flexible environment for applications running on embedded and mobile devices in the Internet of Things: micro-controllers, sensors, gateways, mobile phones, personal digital assistants (PDAs), TV set-top boxes, printers and more. Java ME includes flexible user interfaces, robust security, built-in network protocols, and support for networked and offline applications that can be downloaded dynamically. Applications based on Java ME are portable across many devices, yet leverage each device’s native capabilities.

(Java ME)为运行在物联网中嵌入式和挪动设施上的应用程序提供了强壮、灵便的环境: 微控制器、传感器、网关、移动电话、个人数字助理(pda)、电视机顶盒、打印机等等。Java ME 包含灵便的用户界面、强壮的安全性、内置的网络协议,以及对可动静下载的网络和离线应用程序的反对。基于 Java ME 的应用程序能够跨许多设施移植,同时还能够利用每个设施的本机性能。

2.2 Java 语言的特点

2.2.1 简略性:

Java 语言相当于对 C ++ 语言做了减法:
A.break/continue 语法代替 go to 语句
B. 剔除操作符过载(overload) 和多继承特色
C. 不应用主文件,免去预处理程序
D. 不须要指针
F. 主动回收机制

2.2.2 编译性:

Java 编译程序将程序编译称为字节码文件(byte-code),也就是通常所说的.Class 文件。

2.2.3 解释性:

Java 语言在程序开发的的过程中通过把类装进环境缩小了“链接”的过程,大大提高了开发效率。

2.2.4 高性能:

Java 语言是先编译后解释 +“及时”编译 = 全编译
即 Java 语言实现了全编译

2.2.5 面向对象:

面向对象的设计思维使得开发者更加重视数据和操作数据的办法,而不是严格的用过程来思考

2.2.5 健壮性:

A.Java 显示的办法申明保障了编译程序时的调用谬误
B.Java 不反对指针,打消了重写存储和讹误数据的可能性
C. 主动回收机制打消了动态存储分配和接触调配时候产生的谬误
D.Java 在解释程序时进行查看

2.2.6 安全性:

Java 语言没有指针,所以防止了伪造指针指向存储器。
Java 语言编译程序不解决存储安顿决策,所以无奈通过申明查看理论存储安顿,由解释程序决定理论存储地位。
Java 运行零碎应用字节码验证过程来保障装载到网络上的代码不违反 java 语言限度,避免恶意程序的攻打。

2.2.7 跨平台:

只有在须要运行 java 应用程序的操作系统上,先装置一个 Java 虚拟机 (JVM Java Virtual Machine) 即可。由 JVM 来负责 Java 程序在该零碎中的运行。

因为有了 JVM,所以同一个 Java 程序在三个不同的操作系统中都能够执行。这样就实现了 Java 程序的跨平台性。也称为 Java 具备良好的可移植性。

2.2.8 分布式解决:
2.2.9 开源:

2. JDK(Java Development Kit)

2.1 JDK 概述

JDK(Java Development Kik)Java 开发工具包,是 Java 开发的最小环境,其外围是 JRE(Java Runtime Environment)Java 运行环境,是 Java 运行的最小环境,外面蕴含了 Java 零碎类库 (Java 提前封装好的性能类,开发者间接调用, 大大提高开发的效率) 和 Java 虚拟机(提供了运行和加载.class 字节码文件的运行工具), 目前曾经更新到 JDK14,最罕用的版本是 JDK8

2.2 JDK 下载与装置

下载地址 http://www.oracle.com
下载实现后执行下一步直至实现即可。
留神:
1、同时装置多个 jdk 时须要应用指定环境变量来确认应用的是哪个 jdk
2、装置门路不要有中文或者特殊符号如空格等。最好目录对立
3、咱们也提供了绿色解压版,不须要装置间接解压即可

2.3 环境变量的配置

JAVA_HOME
该配置是要配置 jdk 的装置目录,来明确要应用哪个版本的 jdk。
步骤(Win7):电脑属性 —> 高级零碎设置 —> 环境变量 —> 零碎变量 —> 新建 JAVA_HOME,输出装置目录。

PATH
零碎会在 path 配置的值中,寻找可执行文件。
须要把 jdk\bin 增加到 path 中。
步骤:环境变量 —>Path—>%JAVA_HOME%bin

2.4 目录介绍

2.5 Java 语言罕用的包(补充)

Java 语言采纳包构造组织和治理类和接口,罕用的包如下:
2.5.1java.lang
这个包下提供了使用 Java 语言开发的根底类,譬如 Object,Class,Math…
2.5.2java.util
蕴含汇合框架、遗留的 collection 类、事件模型、日期和工夫设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期 Date 类、堆栈 Stack 类、向量 Vector 类等)。汇合类、工夫解决模式、日期工夫工具等各类罕用工具包
2.5.3java.io
该类提供了全面的 IO 接口。包含:文件读写、规范设施输入等。
2.5.4java.net
该包提供了实现网络应用与开发的类。
2.5.5java.sql
该包提供了 Java 语言拜访并解决存储在数据源中数据的 API
2.5.6java.awt
Java 窗口工具包
2.5.7java.swing
提供了 GUI 设计与开发的类

退出移动版