JAVA基础(一)
java 可以做什么
桌面应用开发
服务器系统
大数据开发
游戏开发
移动应用开发
java 技术体系
java ME:小型版
java快速入门
java开发环境
java语言的产品是jdk (java Development Kit: java开发人员工具包)
LTS:长期支持版(jdk8/jdk11/jdk17)
jdk安装——Oracle 官网
java -version、javac -version
java.exe——执行工具
javac.exe——编译工具
命令窗口的常用命令
dir:查看当前路径下的文件信息
cd:进入目录(tab键自动补充)
cls:清屏
java入门程序——Hello World
java三步开发
- 编写代码:源代码文件(HelloWorld.java),命名为驼峰模式,文件名必须与类名一致
- 编译代码:使用javac编译,生成字节码文件,后缀class
- 操作代码:使用java运行
编写代码
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!"); # 注意大小写 } }
编译代码
javac HelloWorld.java
运行代码
java HelloWorld
HelloWorld常见的程序问题
- 查看->文件扩展名
- Ctrl S,保存
- 文件名和类名不一致
- 大小写错误、单词拼写错误、中文符号存在
- 括号不匹配
- 编译使用不当
java程序执行原理
机器语言:01串
计算机底层是硬件电路,通过是否通电表示0,1
bug与Debug
jdk组成、跨平台原理
jdk 的组成
JVM:java虚拟机,真正运行java程序的地方
核心类库:
JRE:JVM统称为核心类库JRE,java的运行环境
JDK:java开发工具包(包括)JVM、核心类库和开发工具,如java、javac)
java跨平台,工作原理——JVM虚拟机
一次编译,处处可用
Path和Java_home 环境变量
Path环境变量
记住程序路径,方便在命令行窗口的任何目录中启动程序
我的电脑->属性->高级系统设置->高级->环境变量
JAVA_HOME
告诉操作系统jdk安装在哪里
PATH:%JAVA_HOME%bin
jdk1.8 的配置
- classpath: %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
- JAVA_HOME: E:\java\jdk1.8\jdk1.8
- JRE_HOME: E:\java\jdk1.8\jre1.8
- path: %JAVA_HOME%\bin %JRE_HOME%\bin
IDEA使用开发工具
IntelliJ IDEA概述与安装
网址:jetbrains.com/idea
IDEA基础
IDEA 项目结构
- project(项目、工程)
- module(模块)
- package(包)
- class(类)
新项目运营
New Project -> module -> package -> class
包名一般是公司域名的反写
IDEA 设置字体、主题、背景色
主题:file -> Settings -> appearance -> theme
字体:file -> Settings -> editor -> font
背景色:editor -> color Scheme ->General -> Text
IDEA常用快捷键
# 创建一个main方法 main psvm # 输出语句 sout "hello wold!".out
# 复制当前行数据到下一行
Ctrl + D
# 删除所在行
Ctrl + X # (建议使用)
Ctrl + Y
# 格式化代码
Ctrl + Alt + L
# 上下移动当前代码
Alt + Shift + ↑
Alt + Shift + ↓
# 对代码进行注释
Ctrl + /
Ctrl + Shift + /
IDEA 工程、模块常用操作
删除类文件
修改类名称:Refactor -> Rename
修改模块:右键 -> Refactor -> Rename module and directory
导入模块:file -> new project -> module from existing sources(找黑点)即iml文件
建议:在工程目录下新建一个模块,把src目录下源代码拷贝过来
删除模块:Remove(移除)+ 目录下删除源文件——建议
Delete(删除)+ 配置文件中modules.xml 中删除改文件的配置路径 + 重启IDEA
打开工程:file -> open -> 选择路径 -> 打开黑点的那个
关闭工程:file -> close project
小结
java 的概述
- java是sun公司研发,2009年被Oracle收购
- java之父:詹姆斯 高斯林
- java是一门高级编程语言,语言风格接近人类的自然语言,写程序简单易懂
- java流行度高,商业占用率高
- 可移植性
- java的作用,什么都可以,但是最被市场认可的是企业级开发:京东、淘宝这样的互联网系统
- java的技术体系:java se(java技术的核心与基础)、java ee(大型互联网企业级解决方案)、java me(移动应用的解决方案,没有被市场认可)
java 的产品
-
jdk:java的开发工具包
-
Oracle官网下载,拒绝安装在中文路径与空格
-
LTS:长期支持版:8、11、17
-
jdk中要用的两个最重要的程序:javac(编译程序)、java(运行程序)
-
安装成功后要进行验证——四个命令
-
常用命令行命令:cls、cd \、dir、盘符
开发一个Java入门程序
- 编写代码:建议全英文名称、首字母大写、以.java结尾
- 编译代码:javac HelloWorld.java,产生class文件
- 运行代码:java HelloWorld
java程序的执行原理
- java程序最终会翻译解释成为机器能识别的机器语言:01串
- BUG:代表程序出现问题或漏洞的意思
- DeBug:解决问题
Path环境变量与JAVA_HOME
- Path的作用:记住程序的路径,方便在命令行的任意目录驱动程序
- 新版本的JDK会自动配置javac和java程序的路径到Path环境变量中去
- 重点注意:老版本JDK需要手动配置
- JAVA_HOME:配置JAVA_HOME后,path修改为%JAVA_HOME%\bin
开发工具:IntelliJ IDEA
- 集成开发工具:工程结构化管理项目,有错误提醒,有代码智能补全
- 官网下载
- 开发程序:创建空工程 -> 创建module -> 创建package -> 创建class
java基础语法
注释
写在程序中,对代码进行解释说明的文字,方便自己和他人查看,以便理解程序。
/**
* 目标:注释的使用
* 文档注释,内容可提取到一个程序说明文档中
* 这个程序专门用来讲解注释
*/
// 单行注释
/*
多行注释
*/
注释的特点
- 注释不影响程序的执行
- javac命令进行编译,生成class文件,class文件中已经没有注释了
- 注释是给程序员看的,
Ctrl + / # 单行注释
Ctrl + Shift + / # 多行注释
字面量
计算机是用来处理数据的,字面量就是告诉程序员,数据在程序中的书写格式
literal
常用数据
# 字符——单引号
# 字符串——双引号
# 布尔值——true/false
# 空值——null
// 目标:掌握常见数据在程序中的书写格式
// 1.整数
System.out.println(666);
// 2.小数
System.out.println(99.5);
// 3.字符:必须用单引号围起来,有且只能有一个字符
System.out.println('a');
System.out.println('0');
System.out.println('中');
System.out.println(' '); //空字符
// 特殊的字符:\n 换行,\t tab
System.out.println('中');
System.out.println('\n');
System.out.println('国');
System.out.println('\t');
// 4.字符串:必须用双引号围起来,里面的内容随意
System.out.println("随意");
// 5.布尔值
System.out.println(true);
System.out.println(false);
true、false、null、\n、\t
变量
变量,是用来存储一个数据的内存区域,且里面存储的数据可以发生变化。
变量定义的格式
数据类型 变量名称 = 初始值;
-
数据类型:强制限制盒子中数据的存储形式
-
变量名称:首字母小写,有意义
-
初始值:存储的初始数据
// 目标:学会使用变量
// 数据类型 变量名称 = 初始值;
double money = 6.0;
System.out.println(money);
// 模拟收红包
money = money + 4.0;
System.out.println(money);
// 修改变量中的值
int age = 21;
System.out.println(age);
age = 25;
System.out.println(age);
变量使用注意事项
- 变量要先声明再使用
- 变量声明后,不能存储其他类型的数据
- 变量的有限范围是从定义开始到"}"截止,且在同一个范围内不能定义两个同名的变量
- 变量定义的时候可以没有初始值,但是使用时必须给出初始值;
变量在计算机的底层原理
二进制
只有0、1,逢二进一
0——0
1——1
2——10
3——11
…
十进制转二进制——除二取余法
计算机中的数据的最小单元
-
计算机最小的组成单元:8个二进制数,称为一个字节(byte,B)
-
每个二进制位称为一位(bit,b),1byte = 8bit
字符在计算机中是如何存储的
char ch = 'a';
# 通过ASCII码表,存储'a'对应的ASCII码的二进制形式
A——65
a——97
0——48
图片数据
- 图片是无数个像素点组成的
- 每个像素点的数据:用RGB原理,6位的八进制数,存储颜色(0~255)
声音数据
进制转换
- 十进制转二进制:除二取余法
- 二进制:0B、0b
- 八进制:三位一组(0-7),0
- 十六进制:四位一组(0-9a-f),0X、0x
计算机的数据单位
- 计算机的最小组成单元:1B = 8b
- 1B,1KB,1MB,1GB,1TB
数据类型
数据类型的作用:约束变量存储数据的形式
数据类型的分类
数据类型 | 关键字 | 取值范围 | 内存占用(字节数) |
---|---|---|---|
整数 | byte | -128~127 | 1 |
short | -32768~32767 | 2 | |
int(默认) | (10位数) | 4 | |
long | (19位数) | 8 | |
浮点数 | float | 1.401298e-45~3.402823e+38 | 4 |
double(默认) | 4.9e-324~1.79769e+308 | 8 | |
字符 | char | 0~65535 | 2 |
布尔 | boolean | 1 |
关键字、标志符
关键字:有特殊功能,不可用作类名或变量名
标志符:
- 基本要求:由数字、字母、下划线和美元符等组成
- 不能以数字开头、不能是关键字、区分大小写
命名规则:
- 变量名称:建议全英文、有意义、首字母小写,满足驼峰模式
- 类名称:建议全英文、有意义、首字母大写,满足驼峰模式
小结
注释
- 作用
- 分类:单行注释、多行注释、文档注释
- 注释不影响程序执行,编译后的class文件中没有注释
字面量
- 告诉程序员,数据在程序中如何书写
- 字面量分类:整数、小数、字符(单引号),字符串(双引号),布尔值(true、false),空值
变量
- 内存中的一块区域,用来存储数据,并且存储中的数据可以变化
- 格式:数据类型 变量名称 = 初始值,
- = ,赋值:从右往左执行
变量使用注意事项
- 变量要先声明再使用
- 变量声明后,不能存储其他类型的数据
- 变量的有限范围是从定义开始到"}"截止,且在同一个范围内不能定义两个同名的变量
- 变量定义的时候可以没有初始值,但是使用时必须给出初始值;
变量在计算机中的底层逻辑
- 变量存储的是数据的二进制形式
- 逢二进一、除二取余
- 文字:ASCII编码表固定了常见字符对应的数字,存储字符对应数字的二进制形式
- 图片,音视频,存储都是二进制形式
- 补充:二进制转化为十进制
- 八进制:三位一组,0125
- 十六进制:四位一组,0xff45ad,方便观察二进制
数据类型
- 约束变量只能存储什么类型的数据
- 分类:基本数据类型(4大类8种),引用数据类型(String)
- 注意事项:整数字面量默认为int类型,想当成long类型后面加L/l
- 小数字面量默认为double类型,想当成float类型后面加F/f
关键字,标志符