JAVA_Basis -- 1.java开发环境的介绍

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 面向对象:

面向对象的设计思想使得开发者更加注重数据和操作数据的方法,而不是严格的用过程来思考
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d1OY09n2-1598799350294)(/img/bVbL6Ro)]

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具有良好的可移植性。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FLFkYhDz-1598799350299)(/img/bVbL6Ry)]

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
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J4K3mbO6-1598799350303)(/img/bVbL6Ug)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tx7N9mMz-1598799350306)(/img/bVbL6Uo)]

2.2 JDK下载与安装

下载地址http://www.oracle.com
下载完成后执行下一步直至完成即可。
注意:
1、 同时安装多个jdk时需要使用指定环境变量来确认使用的是哪个jdk
2、 安装路径不要有中文或者特殊符号如空格等。最好目录统一
3、 我们也提供了绿色解压版,不需要安装直接解压即可

2.3 环境变量的配置

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D3B0PZ7M-1598799350309)(/img/bVbL6VE)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JxOCNvh5-1598799350316)(/img/bVbL6VF)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DdDpzTWr-1598799350319)(/img/bVbL6VM)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s5E3O1AJ-1598799350322)(/img/bVbL6VO)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ph5d80st-1598799350325)(/img/bVbL6VP)]

PATH
系统会在path配置的值中,寻找可执行文件。
需要把jdk\bin添加到path中。
步骤:环境变量—>Path—>%JAVA_HOME%\bin
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Chc3fv1h-1598799350328)(/img/bVbL6V2)]

###### 2.4 目录介绍[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e3izMj6x-1598799350331)(/img/bVbL6Wn)]

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设计与开发的类
2.5.8java.applet
创建applet程序所用的类
2.5.9java.beans
与JavaBeans相关的类
2.5.10java.nio
为输入输出提供缓冲的类
2.5.11javax.net
提供用于网络程序的类,网络应用扩展类

3 Java语言开发软件Eclipse

官网https://www.eclipse.org/downloads/

3.1概述

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

3.2 下载安装

到官方网站进行下载完整的文件(Java EE企业级),直接解压安装

3.3 Java的工作空间 Workspace

Java的工作空间是用来保存所有的Java开发文件和代码的存储位置,工作空间可以自己进行设置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fC8vomra-1598917268678)(/img/bVbMchT)]

创建项目之后也可以在项目上查看项目所在工作空间

3.4 关于Eclipse要知道的几件事情(拓展)
3.4.1 不小心删除的项目文件怎么恢复?

如果在项目中不小心删除了文件想要恢复的话就可以利用Eclipse提供的历史记录功能了
右键点击项目—>Restore from Local Histoy—>选中要恢复的项目文件—>Restore

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wfa0v84L-1598917268682)(/img/bVbMchX)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tsFAn9td-1598917268687)(/img/bVbMchY)]

3.4.2 左侧项目栏不见了怎么恢复?

左侧的工程栏会显示你所有的工程文件,所以丢失就很麻烦,恢复可以选择窗口的视图
Windows—>Show view—>Project Explorer

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5dsDmOa6-1598917268693)(/img/bVbMch8)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HyMrgIaF-1598917268698)(/img/bVbMcib)]

3.4.3 常用的快捷键

Ctrl+D: 删除当前行

Ctrl+Alt+↓ 复制当前行到下一行(复制增加,有些版本需要Ctrl+win+Alt+↑)

Ctrl+Alt+↑ 复制当前行到上一行(复制增加,有些版本需要Ctrl+win+Alt+↑)

Alt+↓ 当前行和下面一行交互位置(可以省去先剪切,再粘贴了)

Alt+↑ 当前行和上面一行交互位置(同上)

Alt+← 前一个编辑的页面

Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)

Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性

Alt+/ 补全当前所输入代码

4 Holle World案例

4.1 概述

对于每一个程序员来说,在面对一个新的开发环境的时候所要创建的第一个项目就是Hello world项目了,其大致的创建过程为:
创建Java工程—>创建包—>创建类—>编辑内容—>点击运行输出结果

4.2

首先要创建一个工程,创建工程的过程相当于创建了适合类文件运行和存储的环境和空间。
步骤一:file—>java Project—finis

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bcmAqm07-1598917268700)(/img/bVbMciu)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uRh5a1fP-1598917268702)(/img/bVbMciv)]

步骤二:Ctrl+N—>搜索java Project—>next—>finish

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kfHTNFke-1598917268704)(/img/bVbMciy)]

4.3 创建包

注意事项
1.包名小写
2.通常是域名反写
普通方法:src右键—>new—>package—>finish

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pKbo6nPE-1598917268706)(/img/bVbMciD)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d5iS8eFI-1598917268709)(/img/bVbMciE)]

快捷方法:Ctrl+N—>搜索package—>finish

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jbC2uT4u-1598917268711)(/img/bVbMciF)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iESr6WV0-1598917268713)(/img/bVbMciE)]

4.4 创建类

创建方法和创建包的方法一样,最最主要的是注意事项

注意事项
1.类名要严格遵守驼峰命名法(即如果类名是由多个单词组合而成,那么除了第一个单词之外,其余组合单词的首字母要大写)。
2.也可以之间在src上点击快捷创建方式,选择class再把包一同创建出来。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eeljAc0n-1598917268715)(/img/bVbMciI)]

package com.mtingcat.javabasis.holleworld;
/**
 * 现在是2020年8月31日,现在写到了Holle World即每一个程序员
 * 都要写的第一个项目,加油!!!!
 * @author MTing
 *
 */
public class holleWorld {

	public static void main(String[] args) {
		/*
		 *  public void println(String x) {
         *		synchronized (this) {
         *   		print(x);
         *  		newLine();
         *		}
    	 *	}
		 */
		System.out.println("Holle World!");//在控制台输出 Holle World!		

	}

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-14GUZlvw-1598917268717)(/img/bVbMci6)]

4.5 说明
//单行注释

/\* 多行注释 \*/

/\*

 \* 用来定义一个包

 \* package 加粗变红的效果,叫做关键字。专门用来定义包 。

 \* cn.tedu.hello 包名 \-- 全小写 + 公司的域名倒着写

 \* ; 是Java语句的结束符,相当于。

 \*/

package cn.tedu.hello;

/\*

 \* 用来定义一个类

 \* public 是关键字,专门用来修饰类的访问权限。公共的

 \* class 是关键字,专门用来定义一个类

 \* HelloWorld 类名 \-- 驼峰命名法

 \* { java代码 }

 \*/

public class HelloWorld {

 /\*

 \* 定义一个主函数/主方法/main方法

 \* public 是关键字,专门用来修饰main方法的访问权限。公共的

 \* static 是关键字,修饰main方法是静态方法

 \* void 空/无,main方法返回值是空

 \* main 方法名

 \* () 是方法的标志

 \* String\[\] args 方法的参数

 \* { Java代码/方法体 }

 \*/

 public static void main(String\[\] args) {

 /\*

 \* 用来向控制台输出指定的数据

 \* System 要发出系统指令

 \* out 发出一个输出的动作

 \* println 打印后换行

 \* () 是方法的标志

 \* "hello java" 方法的参数 \-- 要输出的数据

 \* ; Java语句的结束符

 \*/

 System.out.println("hello java");

 }

}
4.5 项目结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EwuSxO4w-1598917268719)(/img/bVbMciz)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-upHg3gR5-1598917268721)(/img/bVbMciA)]

4.6 执行原理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Gq0JFiSc-1598917268725)(/img/bVbMcjb)]

1、 编译:通过javac命令将java的源文件也就是.java文件编译成.class文件。
2、 执行:先启动java虚拟机,不同的操作系统有不同的jvm,因此java跨平台,再通过JVM加载HelloWorld.class字节码文件。并加载main方法执行程序。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值