文章目录
1.1 Java简介
- Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称。由 James Gosling和同事们共同研发,并在 1995 年正式推出。2010 年 Oracle 公司收购 Sun Microsystems,之后由 Oracle 公司负责 Java 的维护和版本升级。
1.2 Java体系
- JAVA有三大体系,分别是Java SE(Java Platform Standard Edition)、Java EE(Java Platform Enterprise Editoin)、Java ME(Java Platform Micro Eidtion),Java语言只是Java SE中的一部分。
-
Java SE:称为Java标准版,包含Java基础类库和语法。它主要用于开发图形用户界面(GUI)、复杂逻辑和高性能的桌面应用程序。
Java SE分为四个组成部分JVM(Java Virtual Machine),JRE(Java SE Runtime Environment),JDK(Java Development kits)以及Java语言,想要学习及开发Java其他平台的应用,必须先了解Java SE以奠定基础。- JVM将Java编译好的文件翻译成对应的机器语言(加载解析字节码文件)。
- JRE包含用于Java运行的环境。
- JDK包含用于Java开发的工具。
- Java语言则是定义Java开发的语法规则。
-
Java EE:称为Java企业版,是以Java SE为基础,定义了一系列的服务,API,协议等,增加了编写企业级应用程序的类库。
它是一个标准的多层体系结构,主要用于开发和部署分布式、基于组件、安全可靠、可伸缩和易于管理的企业级应用程序。 -
Java ME:称为Java微型版,主要用于开发消费性电子产品或嵌入式系统中的应用程序,开发具有有限的连接、内存和用户界面能力的设备应用程序。如移动设备(手机)、PDA、能够接入电缆服务的机顶盒,以及各种终端和其他消费电子产品。
1.3 Java语言特点
-
面向对象:Java 语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements)。Java 语言全面支持动态绑定。
-
平台无关性:平台无关性的具体表现在于,Java 是“一次编写,到处运行(Write Once,Run any Where)”的语言,因此采用 Java 语言编写的程序具有很好的可移植性,而保证这一点的正是 Java 的虚拟机机制。在引入虚拟机之后,Java 语言在不同的平台上运行不需要重新编译。
-
解释执行:Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。
-
健壮性:Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。
-
多线程:Java 语言是多线程的,这也是 Java 语言的一大特性,它必须由 Thread 类和它的子类来创建。Java 支持多个线程同时执行,并提供多线程之间的同步机制。任何一个线程都有自己的 run() 方法,要执行的方法就写在 run() 方法体内。
-
分布式:Java 语言支持 Internet 应用的开发,在 Java 的基本应用编程接口中就有一个网络应用编程接口,它提供了网络应用编程的类库,包括 URL、URLConnection、Socket 等。Java 的 RIM 机制也是开发分布式应用的重要手段。
-
安全性:Java 通常被用在网络环境中,为此,Java 提供了一个安全机制以防止恶意代码的攻击。除了 Java 语言具有许多的安全特性以外,Java 还对通过网络下载的类增加一个安全防范机制,分配不同的名字空间以防替代本地的同名类,并包含安全管理机制。
-
可移植性:这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。
1.4 JDK、JRE、JVM
- JDK:全称(Java Development Kit Java开发工具包) 。
- JDK 是提供给 Java 开发人员使用的,其中包含了 java 的开发工具,也包括了 JRE。所以安装了 JDK,就不用在单独安装 JRE 了。
- JDK = JRE + java 的开发工具 [java, javac,javadoc,javap 等]。
- JRE:全称(Java Runtime Environment Java运行环境) 。
- 包括 Java 虚拟机(JVM Java Virtual Machine)和 Java 程序所需的核心类库等,如果想要运行一个开发好的 Java 程序,计算机中只需要安装 JRE 即可。
- JRE = JVM + Java 的核心类库[类] 。
- JVM:将Java编译好的文件翻译成对应的机器语言(加载解析字节码文件)。
- JVM 是 Java 平台架构的基础,Java 的跨平台特性正是通过在 JVM 中运行 Java 程序实现的。
- 不同操作系统之上的 JVM 是不同的,Windows 平台之上的 JVM 不能用在 Linux 平台,反之亦然。
- JDK、JRE 和 JVM 的包含关系 。
- JDK = JRE + 开发工具集(例如 Javac,java 编译工具等) 。
- JRE = JVM + Java SE 标准类库(java 核心类库)。
1.5 开发环境配置
- 环境变量配置。
- 我的电脑–属性–高级系统设置–环境变量。
- 增加 JAVA_HOME 环境变量指向jdk的安装目录。
- 编辑 path 环境变量,增加 %JAVA_HOME%\bin 。
- 打开DOS命令行,任意目录下敲入javac(编译)、java(执行),出现参数信息,配置成功。
1.6 第一个Java程序
-
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。
-
public class FirstApp { public static void main(String[] args) { System.out.println("Hello World"); } }
-
public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样 Java 虚拟机就可以找到 main() 方法,从而来运行 Java 程序。
-
class:用于声明一个类,其后所跟的字符串是类的名称。
-
static: 表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候 main() 方法也随着加载到内存中去。
-
void:该方法无返回值。
-
main:约定俗成,规定的,这是 Java 程序的入口地址,Java 虚拟机运行程序的时候首先找的就是 main 方法。
-
String[] args:从控制台接收参数。
-
一个java程序可以有n个类,但是这n个类只能有一个类是public类。文件名必须与public类同名。
1.7 注释(Comment)
- 注释是对程序语言的说明,有助于开发者和用户之间的交流,方便理解程序。注释不是编程语句,因此被编译器忽略。
-
单行注释:只能注释一行内容,用在注释信息内容少的地方。
// 这是单行注释
-
多行注释:能注释很多行的内容。为了可读性比较好,一般首行和尾行不写注释信息(这样也比较美观好看),如图 2 所示。
注意:多行注释可以嵌套单行注释,但是不能嵌套多行注释和文档注释。
/* 这是多行注释 可以加很多注释内容 */
-
文档注释:也能注释多行内容,一般用在类、方法和变量上面,用来描述其作用。文档注释可以通过 Javadoc 命令把文档注释中的内容生成文档,并输出到 HTML 文件中,方便记录程序信息。还可以包含一个或多个 @ 标签,每个 @ 标签都在新的一行开始。
-
类注释:
/** * @projectName(项目名称): project_name * @package(包): package_name.file_name * @className(类名称): type_name * @description(类描述): 一句话描述该类的功能 * @author(创建人): user * @createDate(创建时间): datetime * @updateUser(修改人): user * @updateDate(修改时间): datetime * @updateRemark(修改备注): 说明本次修改内容 * @version(版本): v1.0 */
-
方法注释:
/** * 类方法的详细使用说明 * * @param 参数1 参数1的使用说明 * @return 返回结果的说明 * @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明 */
-
构造方法注释:
/** * 构造方法的详细使用说明 * * @description: 构造方法 * @param 参数1 参数1的使用说明 * @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明 */
-
字段注释:
/** 提示信息 */ private String strMsg = null;
-
1.8 盘符命令(DOS)
- Dos定义: Disk Operating System 磁盘操作系统,包含三个步骤,接受指令、解析指令、执行指令。
- 常见盘符指令
操作 | 说明 |
---|---|
盘符名称: | 盘符切换,E回车,表示切换换到E盘 |
dir | 查看当前路径下的内容 |
cd目录(单极进入) | 进入单极目录,cd,it |
cd…(单极退回) | 回退到上一级目录 |
cd目录1\目录2…(多级进入) | 进入多级目录,cd it\JavaSE |
cd\(多级退回) | 回退到盘符目录 |
cls | 清屏 |
exit | 退出命令提示窗口 |
1.9 转义字符(Escape-Character)
操作 | 作用 |
---|---|
\t | 一个制表位,实现对齐的功能 |
\n | 换行符 |
\\ | 一个\ |
\" | 一个“ |
\’ | 一个’ |
\r | 一个回车,光标回到当前行最前面 |
\ddd | 八进制字符(ddd) |
\uxxxx | 16进制Unicode字符(xxxx) |
\0 | 空字符 |
\s | 空格 |
1.10 Idea快捷键
快捷键 | 作用 |
---|---|
psvm(public static void main(String[] args){} ) | 主函数 |
sout(System.out.println()) | 快速输出函数 |
ctrl+/ | 单行注释代码 |
ctrl+shift+/ | 多行注释代码 |
ctrl+alt+space | 内容辅助提示 |
ctrl+alt+L | 格式化代码 |
ctrl+Y | 删除当前行 |
ctrl+D | 复制当前行到下一行 |
alt+insert | 生成构造器等 |
ctrl+H | 查看一个类的层级关系 |
ctrl+B | 定位到类的方法 |
ctrl+alt+T | 生产环绕方式 |
1.11 代码规范
- 类、方法的注释,要以javadoc的方式来写。
- 非Javadoc的注释,往往是给代码的维护者看的,着重告诉读者为什么要这样写,如何修改,注意什么问题等。
- 使用tab操作,实现缩进,默认整体向右边移动,使用shift+tab整体向左移。
- 运算符和 = 两边习惯加一个空格。
- 源文件要使用utf-8编码。
- 行宽度不要超过80个字符。
- 代码编写次行风格和行尾风格。