Java学习笔记
第一章 内容介绍
1.1 Java 就业方向

需要学好 Java 基础(JavaSE),如果没有好的Java基础,这三个方向会很难去从事。
1.2 Java 开发场景举例
下面这些场景都要用到Java基础。
1.2.1 SSM

1.2.2 Android 核心代码

1.2.3 大数据-Hadoop

1.3 Java 的应用领域
1.3.1 企业级应用
主要指复杂的大企业的软件应用、各种类型的网站。应用领域包括金融、电信、交通、电子商务等。

1.3.2 Android 平台应用
Android 应用程序使用 Java 语言编写。Android 开发水平的高低很大程度上取决于 Java 语言核心能力是否扎实。

1.3.3移动领域应用
主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,摆阔机顶盒、车载的大屏影音娱乐设备、汽车通信设备、扫码的POS机等。

第二章 Java 概述
2.1 什么是程序
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。
举例说明:


2.2 Java诞生的小故事

目前 Java8 和 Java11 是长期支持版。
2.3 Java 技术体系平台
| Java SE(Java Standard Edition)标准版 |
|---|
| 支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE |
| Java EE(Java Enterprise Edition)企业版 |
| 是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE |
| Java ME(Java Micro Edition)小型版 |
| 支持Java程序运行在移动终端(手机、PDA)上的平台,对Java APl有所精简,并加入了铸对移动终端的支持,此版本以前称为J2ME |
2.4 Java 重要特点
-
Java 语言是面向对象的(oop)
-
Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证
-
Java语言是跨平台性的。即:一个编译好的la文件可以在多个系统下运行,这种特性称为跨平台
图解:

-
java语言是解释型的[了解]
解释性语言: Javascript PHP, Java
编译性语言:c/c
区别是:解释性语言,编译后的代码,不能直接被机器执行需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,c/c++
2.5 Java 开发工具

2.5.1 工具选择
如何选择开发工具
我们先选择用文本编辑器本 sublime,到大家java有一定了解后,我们再使用IDEA和 Eclipse开发工具。
这是为什么呢
更深刻的理解java技术培养代码感。
2.6 Java 运行机制及运行过程
2.6.1 Java语言的特点:跨平台性

2.6.2 Java 核心机制-Java虚拟机【JVM java virtual machine】
√ 基本介绍
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在 jdk中
- 对于不同的平台,有不同的虚拟机。
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”[说明]
√ 示意图

2.7 什么是JDK,JRE
2.7.1 JDK 基本介绍
-
JDK 的全称(Java Development Kit Java 开发工具包)
JDK = JRE + java 的开发工具
-
JDK 是提供给 java 开发人员用的,其中包含了 java 的开发工具,也包括了JRE。所以安装了 JDK,就不用在单独安装 JRE 了
2.7.2 JRE 基本介绍
-
JRE 的全称(Java Runtime Environment)
JRE = JVM + Java 的核心类库
-
包括 Java 虚拟机(JVM Java Virtual Machine)和 Java 程序所需的核心类库等,如果想要运行一个开发好的 Java 程序,计算机只需要安装 JRE 即可。
2.7.3 JDK、JRE和JVM的包含关系
- JDK = JRE + java 的开发工具(例如 javac,java编译工具等)
- JRE = JVM + Java SE标准类库(Java 的核心类库)
- 如果只想运行开发好的 .class 文件,只需要 JRE
2.8 下载安装JDK
官方网址: https://www.oracle.com/java/technologies/downloads/#java8
-
安装JDK步骤
傻瓜式安装,下一步即可
-
细节说明
- 安装路径不要有中文或者特殊符号如空格等。比如D:\program\jdk8
- 当提示安装JRE时,可以选择不安装,也可以安装
2.9 配置环境变量 PATH
2.9.1为什么要配置PATH
-
看一个现象
在dos命令行中敲入javac,出现错误提示

-
原因分析
错误原因:当前执行的程序在当前目录下如果不存在,win10系统会在系统中已有的一个名为path的环境变量指定的目录中查找。如果仍未找到,会出现以上的错误提示。所以进入到jdk安装路径\bin目录下,执行 Javad,会看到 Javac参数提示信息
2.9.2 配置环境变量 PATH 的步骤
- 我的电脑--属性--高级系统设置--环境变量
- 增加JAVA HOME环境变量,指向jdk的安装目录
- 编辑path环境变量,增加%JAVA HOME%\bin
- 打开DOS命令行,任意 javac目录下敲入java如果出现 javac的参数信息,配置成功。
2.10 Java 快速入门
2.10.1 需求说明
要求开发一个 Hello.java 程序,可以输出"Hello World!"
2.10.2 开发步骤
- 将 Java 代码编写到扩展名为 Hello.java 的文件中。
- 通过 javac 命令对该 java 文件进行编译,生成 .class 文件。javac Hello.java
- 通过 java 命令对生成的 class 文件进行运行。java Hello (此处不加后缀 .class)
代码如下:
// 打印Hello World!
// 对代码的相关说明
// 1.public class Hello 表示 Hello 是一个类,是一个 public 共有的类
// 2.Hello{} 表示一个类的开始和结束
// 3.public static void main(String args[]) 表示一个主方法,及我们程序的入口
// 4.main() {} 表示方法的开始和结束
// 5.System.out.prinln("Hello World!");
// 6.;表示语句的结束
public class Hello {
// 编写一个 main 方法
public static void main(String[] args) {
System.out.prinln("Hello World!");
}
}
// 一个源文件中最多只能有一个 public 类,其他类的个数不限
// Dog 是一个类
// 编译后,每一个类都对应一个 .class
class Dog {
// 一个源文件中最多只能有一个 public 类,其他类的个数不限,也可以把 main 方法写在非 public 类中,
// 然后指定运行非 public 类,这样入口方法就是非 public 的 main 方法
public static void main(String args[]) {
System.out.println("Hello Dog!");
}
}
2.10.3 运行原理示意图


2.11 Java 开发事项和细节说明
- java源文件以java为扩展名。源文件的基本组成部分是类(class),如本类中的 Hello
- Java应用程序的执行入口是main(方法。它有固定的书写格式:
public static void main(String[] args) - java语言严格区分大小写
- Java方法由一条条语句构成,每个语句以“;"结束。
- 大括号都是成对出现的,缺一不可。[习惯,先写{}再写代码]
- 一个源文件中最多只能有一个public类。其它类的个数不限。
- 如果源文件包含一个 public类,则文件名必须按该类名命名!
- 一个源文件中最多只能有一个public类其它类的个数不限,也可以将main方法写在非public 类中,然后指定运行非 public 类,这样入口方法就是非 public 的 main 方法。
2.12 Java 转义字符

2.12.1 Java 常用的转义字符
在控制台,输入 tab 键,可以实现命令补全
| \t | 一个制表符,实现对其的功能 |
|---|---|
| \n | 换行符 |
| \\ | 一个\ |
| \" | 一个" |
| \' | 一个' |
| \r | 一个回车 |
2.12.2 说明
应用案例
// 演示转义字符
public class ChangeChar {
// 编写一个 main 方法
public static void main(String[] args){
// \t 一个制表符,实现对其的功能
System.out.println("北京\t天津\t上海");
// \n 换行符
System.out.println("jack\nsmith\nmary");
// \\ 一个\
System.out.println("C:\\Windows\\System32");
// \" 一个"
System.out.println("老韩说:\"要好好学习java,有钱途\"");
// \' 一个'
System.out.println("老韩说:\'要好好学习java,有钱途\'");
// \r 一个回车
System.out.println("他有马\r你没");
}
}
2.13 初学Java易犯错误
- 编译或者运行时,找不到文件 javac HelLe.java,把文件名或者目录找对
- 主类名和文件名不一致工,修改时保持一致即可
- 缺少;
- 拼写错误,比如1->10->0,void-viod,要求写代码时,一定要小心
常见错误总结:
初学者学习编程最容易犯的错是语法错误。Java要求你必须按照语法规则编写代码。如果你的程序违反了语法规则,例如:忘记了分号、大括号、引号,或者拼错了单词, java编译器都会报语法错误。尝试着去看懂编译器会报告的错误信息。
举例:
-
1->1
-
0->0
-
英文符号写中文符号
-
void->viod拼写错误不好修改的错误其实是业务错误,环境错误
2.14 注释(comment)
2.14.3 介绍
用于注解说明解释程序的文字就是注释,注释提了代码的阅读性(可读性);注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。
2.14.2 Java 中的注释类型
- 单行注释 //
- 多行注释 /* */
- 文档注释 / /*
2.14.3 单行注释
基本格式
格式: // 注释文本
2.15.4 多行注释
基本格式
格式:/* 注释文字 */
2.15.5 使用细节
- 被注释的文字,不会被 JVM (java 虚拟机)解释执行
- 多行注释里面不允许有多行注释嵌套
2.15.6 多行注释

2.15.7 代码演示
// 注释的使用
public class Comment01 {
// 编写一个main方法
public static void main(String[] args){
// 单行注释
/* 多行注释 示意=>可读性很好
下面代码完成两个数相加
定义变量
注释
注释
*/
int n1 = 10;
int n2 = 30;
//求和
int sum = n1 + n2;
//输出结果
System.out.println("结果=" + sum);
}
}
/**
* author韩顺平
* @version 1.0
*/
public class Comment02{
// 编写一个main方法
public static void main(String[] args){
// 选中,然后输入tab整体右移
// 选中,然后输入 shift+tab整体左移
int nl = + 2;
int n2 = 5 + 10;
int n3 = 1 + 3 * 34;
}
}
2.15 Java 代码规范
- 类,方法的注释,使用javadoc的方式,即文档注释
- 非javadoc注释,往往是对代码的说明(给程序的维护者),说明如何修改,注意事项
- 使用tab,整体将代码右移)使用shift+tab整体左移
- 运算符和 = 的两边,给空格,代码看上去清楚 int a = 1 + 10;
- 源码文件使用utf-8 编码
- 行宽字符不要超过80
- 代码编程风格有两种次行风格,行尾风格(推荐)、
2.16 Dos 命令(了解 )
2.16.1 Dos 介绍
Dos: Disk Operating System磁盘操作系统,简单说一下 windows的目录结构。

2.16.2 相对路径绝对路径

2.16.3常用 Dos 命令
-
查看当前目录是有什么内容dir
案例演示:dirdir d: \abc2\test200
-
切换到其他盘下:盘符号cd: change directory
案例演示切换到c盘:cd /D c:
-
切换到当前盘的其他目录下(使用相对路径和绝对路径演示)表示上一级目录
案例演示:cd d:abc2\test200cdlabc2\test200
-
切换到上一级:cd ../
-
切换到根目录:cd /
-
查看指定的目录下所有的子级目录tree
-
清屏cls[苍老师]
-
退出DOS exit
-
说明:因为小伙伴后面使用DOS非常少,所以对下面的几个指令,大家了解即可
- md[创建目录]
- rd[删除目录]
- copy[拷贝文件]
- del[删除文件]
- echo[输入内容到文件]
- type
- move[剪切]
2.17 本章作业

未完
作者:keatonlao
出处:http://www.cnblogs.com/Lixiangyu-Blog//
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

浙公网安备 33010602011771号