文章目录
😹 作者: gh-xiaohe
😻 gh-xiaohe的博客
😽 觉得博主文章写的不错的话,希望大家三连(✌关注,✌点赞,✌评论),多多支持一下!!!
🚏 JAVA语言概述
🚀 java的背景
-
Java是美国sun 公司(Stanford University Network) 在1995年推出的一门计算机。高级编程语言
-
Java 早期称为Oak(橡树),后期改名为Java。
-
Java 之父:詹姆斯·高斯林(James Gosling)。
-
2009年 sun公司被Oracle公司收购。
🚄 为什么使用java
- 世界上最流行的编程语言之一,在国内使用最为广泛的编程语言。
- 可移植性、安全可靠、性能较好。
- 开发社区最完善,功能最丰富。
🚒 java能做什么
🚤 java技术体系
🚗 总结:
1.Java是什么?
是一门高级编程语言。
2.Java是哪家公司研发的,现在属于哪家公司?
sun公司、Oracle公司。
3.Java之父是谁啊?
詹姆斯.高斯林
4.Java能做什么?
基本上什么都可以干,主要做互联网系统的开发。
5.Java有哪些技术平台啊
JavaSE(标准版)、JavaEE(企业版)、 JavaME(小型版)
🚏 Java快速入门
🚀 java环境搭建:JDK的安装、常用命令
🚬 如何使用 java
Java语言的产品是JDK(Java Development Kit:Java开发者工具包),必须安装JDK才能使用Java语言。
🚭 JDK产品的发展史
🚬 JDK下载(安装)JDK17
下载地址:JDK17的下载路径(官网)
打开到自己安装的位置查看一下
🚭 如何验证jdk安装成功?
🚭 验证JDK安装成功的方式:查询JDK的版本号
- 在命令行 窗口中分别输入javac –version 及 java –version看版本提示,如果版本提示与自己安装的版本号一致,则代表JDK环境搭建成功。
🚬 javac 和 java 介绍
说明:
- 将来我们写好的Java程序 都是高级语言,计算机底层是硬件不能识别这些语言。
- 必须先通过javac编译工具进行翻译 ,然后再通过java执行工具执行 才可以驱动机器干活。
🚬 总结
1、搭建java开发环境需要安装什么?去哪里下载?
JDK (Java Development Kit ) 开发者工具包; Oracle官网。
2、JDK目前发展到哪里了,LTS版本有哪些,企业使用的JDK有什么特点?
JDK 17,JDK 8、11、17 ,很多企业还在使用JDK 8。
3、如何验证JDK是否安装成功了?
在命令行窗口中,输入java –version、javac –version看版本号。
4、Java开发环境最重要的2个命令是什么啊?
javac 编译命令、 java 执行命令。
🚬 常用命令
🚄 Java入门程序-HelloWorld
🚬 java程序开发的三个步骤
- 开发Java程序,需要三个步骤:编写代码,编译代码,运行代码
🚭 注意事项:
-
第一个Java程序建议使用记事本书写。
-
建议代码文件名全英文,首字母大写,满足驼峰模式,源代码文件的后缀必须是java。
🚬 举例Helloword
1、编写程序
注意:文件名称必须与代码中的类名保持一致。 保存文件 : ctrl + s
2、编译:javac 文件名.java
3、运行:java类名
🚬 HelloWord程序介绍
🚬 总结
-
1、开发一个Java程序要经历哪些步骤?
- 编写、编译(javac)、运行(java)
-
2、Java代码编写有什么基本要求?
-
文件名称的后缀必须是java结尾。
-
文件名称必须与代码的类名称一致。
-
必须使用英文模式下的符号。
-
🚒 HelloWorld程序常见问题
🚬 Windows的文件扩展名没有勾选
🚬 代码写了,但是忘记保存了
🚬 文件名和类名不一致。
🚬 大小写错误,单词拼写错误,存在中文符号,找不到main方法。
🚬 括号不配对。
🚬 编译或执行工具使用不当。
都在底层进行实现了:①现在底层进行编译②编译完成之后再帮助执行
🚤 补充知识:Java程序的执行原理、Bug介绍
🚬 计算机能认识的机器语言长什么样子?
-
机器语言:00011100 00110101 ………
-
计算机底层都是硬件电路,可以通过不通电和通电,表示0、1。
🚬 使用机器语言编程来实现呼吸灯效果
🚬 编程语言发展历程
- 机器语言
- 汇编语言
- 高级语言
🚬 为什么学习高级编程语言?
- 更简单:使用接近人类自己的语言书写,翻译器再将其翻译成计算机能理解的机器指令
🚬 总结
- Java程序的执行原理是什么样的?
- 不管是什么样的高级编程语言,最终都是翻译成计算机底层可以识别的机器语言。
- 机器语言是由什么组成的啊?
- 0和1
🚬 Bug
- 原意是臭虫或者虫子,现在用来指代在电脑系统或者程序中隐藏的一些问题或者漏洞。
🚗 补充知识:JDK的组成、跨平台原理重要
🚬 JDK的组成
面试题什么是JVM、什么是JRE、什么是JDK
学习:程序很多程序是放在JRE核心类库里面的、会深入研究JAVA程序在虚拟中具体是如何运行的
🚬 java的跨平台、工作原理
🚬 总结
- JDK有哪些组成啊?
- JVM虚拟机:真正运行Java程序的地方。
- 核心类库:Java自己写好的一些程序,给咱们的程序调用的
- 开发工具:javac、java、…
- Java的跨平台是什么含义,Java如何实现跨平台的?
- 一次编译、处处可用
- 我们的程序只需要开发一次,就可以在各种安装了JVM的系统平台上运行
🚲 补充知识:JDK安装后Path和Java_home环境变量
🚬 Path环境变量
Path环境变量用于记住程序路径,方便在命令行窗口的任意目录启动程序。
🚬 Path环境变量的原理
当我们在Path中配置某个程序路径后,启动命令行窗口启动程时,是如何去找该程序的。
🚬 为java、javac配置Path的注意事项
- 目前较新的JDK安装时会自动配置javac、java程序的路径到Path环境变量中去 ,因此,javac、java可以直接使用。
- 注意:以前的老版本的JDK在 安装的是没有自动配置Path环境变量 的,此时必需要自己配置Path环境变量。
从新配置了环境变量后,必须检测是否配置成功
- 打开命令行窗口,输入javac –version 及 java –version分别看版本提示。
🚬 配置Java_home环境变量
- JAVA_HOME:告诉操作系统JDK安装在了哪个位置(将来其他技术要通过这个环境变量找JDK)
注意:较新版本的JDK只是自动配置了Path,没有自动配置JAVA_HOME。
🚬 总结
- 什么是Path环境变量?
- Path环境变量用于配置程序的路径。
- 方便我们在命令行窗口的任意目录启动程序。
- JDK安装时,环境变量需要注意什么?
- 较新版本的JDK会自动配置PATH环境变量,较老的JDK版本则不会。
- 建议还是自己配置一下“Path”、 “JAVA_HOME”
🚏 Java基础语法
🚀 注释
🚬 什么是注释
- 注释是写在程序中对代码进行解释说明的文字,方便自己和其他人查看,以便理解程序的。
🚬 注释有哪些
🚬 注释的特点
- 注释不影响程序的执行。
🚬 总结
- 注释是什么?
- 写在程序中对程序进行解释说明的文字
- Java程序中书写注释的方式有几种,各自有什么不同?
- 单行注释://
- 多行注释:/* */
- 文档注释:/** */
- 注释有什么特点?
- 不影响程序的执行,编译后的class文件中已经没有注释了。
- 注释的快捷键是怎么样的?
- Ctrl + / 单行注释(对当前行进行注释)
- Ctrl + Shift + / 对选中代的码进行多行注释。
🚄 字面量
- 计算机是用来处理数据的,字面量就是告诉程序员:数据在程序中的书写格式。
🚬 总结
- 字面量这个知识是告诉同学们什么啊?
- 数据在程序中的书写格式。
- 字符、字符串在程序中的书写格式有什么要求?
- 字符必须单引号围起来,有且仅能一个字符。
- 字符串必须用双引号围起来。
- 几个常见的特殊值的书写格式是?
- true、false、null、\n、\t
🚒 变量
🚬 什么是变量
- 变量就是内存中的一块区域,用来存储一个数据的,且存储的数据可以被替换。
🚬 变量定义的格式
public class VariableDemo1 {
public static void main(String[] args) {
// 目标:让同学们学会定义并使用变量。
// 数据类型 变量名称 = 初始值;
// 注意:从右往左边看的(赋值)
double money = 6.0;
System.out.println(money);
// 收红包4元
money = money + 4.0;
System.out.println(money);
}
}
🚬 修改变量中存储的值
🚬 总结
- 变量是什么,有什么作用?
- 内存中的一块区域。
- 用来存储一个数据的,且存储的数据可以被替换。
- 变量的格式
- 数据类型 变量名称 = 初始值;
- 变量的基本特点
- 变量中只能存一个值
- 变量中存的值是可以替换的
🚬 变量使用注意事项
🚭 变量要先声明再使用
🚭 变量声明后,不能存储其他类型的数据。
🚭 变量的有效范围是从定义开始到“}”截止,且在同一个范围内部不能定义2个同名的变量。
🚭 变量定义的时候可以没有初始值,但是使用的时候必须给初始值。
public class VariableDemo2 {
public static void main(String[] args) {
// 目标:理解变量定义的注意事项,并注意。
// 1、变量要先声明再使用
int age = 21;
age = 25;
System.out.println(age);
// 2、变量声明后,不能存储其他类型的数据。
// age = 35.9;
// 3、变量的有效范围是从定义开始到“}”截止,且在同一个范围内部不能定义2个同名的变量。
{
double money = 23.5;
System.out.println(money);
// double money = 10.4; // 报错
// int age = 28; // 报错
}
// System.out.println(money); // 报错
System.out.println(age);
double money = 99.5;
System.out.println(money);
// 4、变量定义的时候可以没有初始值,但是使用的时候必须给初始值。
int number;
number = 100;
System.out.println(number);
}
}
🚤 变量原理、ASCII、二进制
🚬 二进制
- 只有0、1 ,按照逢2进1 的方式表示数据:
🚭 十进制转二进制的算法
🚭 计算机中的数据的最小单位
- 计算机最小的组成单元是 :使用8个二进制位为一组, 来保存数据,我们称之为一个字节(byte,简称B)
- 其中的每个二进制位称之为一位(bit,简称b) ,1byte=8bit简写1B=8b
🚭 总结
🚬 其它数据类型是如何存储的
🚭 文本(字符)
- ASCII编码表:即美国信息交换标准编码,规定了现代英语、数字字符、和其他西欧字符对应的数字编号。
public class VariableDemo2 {
public static void main(String[] args) {
System.out.println("----------------数据在底层存储的原理:二进制形式------------------");
char ch = 'a'; // ch = 97
System.out.println(ch + 1); // 字符在计算机底层,存储的是二进制形式 + 在做运算 就以运算的方式展现出来 98
// why? 打印出字符 a 提取字符 ch 时 拿取得是字符a对应的97 知道 ch 的类型的是char类型 是看 字符的 就把97 按照对应的ASCII编码 对应的字符给展示出来
System.out.println(ch);
}
}
🚭 音频
🚭 图片
- 图片就是无数个像素点组成的B
- 每个像素点的数据:用0~255255255表示其颜色
🚭 视频
视频就是由 声音 和图片 合成的
🚭 总结
- 字符数据在计算机中是怎么存的?
- 字符存的是ascii码表中对应的数字的二进制形式。
- 字符’A’对应的数字是65
- 字符’a’对应的数字是97
- 字符’0’对应的数字是4
- 图片和音视频等文件的数据是怎么存储的啊?
- 也是采用二进制进行存储的。
🚬 八进制、十六进制、数据单位
🚭八进制、十六进制介绍
public class VariableDemo2 {
public static void main(String[] args) {
int i1 = 0b01100001; // 二进制
System.out.println(i1); // 97
int i2 = 0141; // 八进制
System.out.println(i2); // 97
int i3 = 0x61; // 十六进制
System.out.println(i3); // 97
}
}
🚬 计算机的数据单位
- 计算机最小的组成单元是 :字节,1B=8b。
- 在B的基础上,计算机发展出了KB、MB、GB、TB、………这些数据单位。
🚬 总结
1、二进制如何计算成十进制?
2、二进制如何计算成八进制?
-
每3位二进制作为一个单元,最小数是0,最大数是7,0-7有8个数字。
3、二进制如何计算成十六进制? -
每4位二进制作为一个单元,最小数是0,最大数是15
-
0-15有16个数字,依次用:0~9ABCDEF代表
4、数据大小的单位换算是怎么样的?
🚗 数据类型
🚬 数据类型的分类
- 引用数据类型(除基本数据类型之外的,如String)
- 基本数据类型:4大类8种。
public class VariableDemo3 {
public static void main(String[] args) {
// 目标:掌握常用8种基本数据类型定义变量。
// 1、byte 字节型
byte age = 120;
byte age2 = 127;
// byte age3 = 128;
// 2、short 短整型
short s1 = 32542;
// short s2 = 42542;
// 3、int 整型 (默认类型,如果不确定数据的范围会多大,就用int)
int i = 1;
int it = 243244244;
// 4、long 长整型
long l = 32332323;
// 注意:随便写一个字面量34243243243245默认是当成int类型的,34243243243245虽然没有超过long的范围
// 但是34243243243245它超过了int本身的范围,如果希望34243243243245这个数据是long类型的,需要在后面加L l
long l2 = 34243243243245L;
// 5、浮点型(小数)
// float称为单精度小数:注意:随便写一个小数字面量默认是double类型的,如果希望随便写一个小数默认是float类型的需要加上F/f
float f = 3.14F;
// 6、double 双精度
double score = 99.5;
// 7、字符型
char ch = '徐';
char ch1 = '黑';
// 8、布尔类型
boolean flag = true;
boolean flag2 = false;
System.out.println("--引用数据类型:String--");
// String表示的是字符串类型,定义的变量可以存储一个字符串
String name = "西门吹雪";
System.out.println(name);
}
}
🚬 结论
-
数据类型分为几种?
-
引用数据类型:
-
String基本数据类型:4大类8种。
-
byte short int(默认) long整型
-
float double(默认) 浮点型
-
char 字符型
-
boolean 布尔型
-
-
-
随便写的整数、小数字面值默认什么类型?
- 23, 默认是int类型,加上L/就是long类型的数据了。
- 23.8, 默认是double类型,加上F/f就是float类型了。
🚲 关键字、标志符
🚬 关键字
-
Java语言自己用到的一些词,有特殊作用的,我们称之为关键字。
-
如:public、class、byte、short、int、long、double…
-
java用了,我们就不能用了,否则会报错!如定义:类名或者是变量名称时,就不能用这些词。
注意:关键字很多,不用刻意去记。
🚬 标志符
- 标志符就是名字。
- 我们写程序时会起一些名字,如类名、方法名、变量名,取名时要遵守一定的规则。
🚭 标识符的要求
- 基本要求:由数字、字母、下划线(_)和美元符($)等组成
- 强制要求:不能以数字开头、不能是关键字、区分大小写
🚭 命名指导规范
- 变量名称:满足标识符规则,建议全英文、有意义、首字母小写,满足“驼峰模式”,例如:int studyNumber = 59。
- 类名称: 满足标识符规则,建议全英文、有意义、首字母大写,满足“驼峰模式”,例如:HelloWorld.java。
🚬 结论
- 什么是关键字
- 关键字就是Java自己要用到的词,并且有特殊含义的一些词。
- 标识符(取名字的注意事项)
- 取名字的规则,数字,字母,下划线,美元符等组成。
- 取名字不能数字开头,不能是关键字。