【详细+超基础】Java-学习笔记

Java学习笔记系列——孙不坚1208
【详细+超基础】Java-学习笔记
【详细+超基础】Java-学习笔记 01
【详细+超基础】Java-学习笔记 02
【详细+超基础】Java-学习笔记 03
【详细+超基础】Java-学习笔记 04
【详细+超基础】Java-学习笔记 05
【详细+超基础】Java-学习笔记 06
【详细+超基础】Java-学习笔记 07
【详细+超基础】Java-学习笔记 08
【详细+超基础】Java-学习笔记 09
【详细+超基础】Java-学习笔记 10
Java学习笔记系列持续更新中…

计算机基础

冯诺依曼结构

数学家 冯·诺依曼 提出了计算机制造的三个基本原则,即采用二进制逻辑、程序存储执行以及计算机由五个部分组成(运算器、控制器、存储器、输入设备、输出设备),这套理论被称为冯·诺依曼体系结构。

【详细+超基础】Java-学习笔记_第1张图片

附:三分钟带你了解冯.诺依曼结构

Typora及Markdown语法

Markdown常用语法

代码块生成
// 对于代码块,使用“```+编程语言”即可生成书写对应代码块的区域
// JS代码块
```javascript 
// Java代码块
```java
……
标题
// 采用“#+空格+标题的形式定义6个标题”
# 一级标题
## 二级标题    
### 三级标题    
#### 四级标题    
##### 五级标题    
###### 六级标题    

快捷键:Ctrl + 1/2/3/4/5/6

加粗
**明天也要加油鸭**

明天也要加油鸭

快捷键:选中文本 Ctrl + B

代码高亮显示
`高亮显示的代码(一般高亮显示代码)`
高亮显示的代码(一般高亮显示代码)

快键键:选中文本Ctrl + Shift + ~

删除线
~~被删除的文本~~

被删除的文本

快键键:选中文本Shift + Alt + 5

下划线
该文本拥有下划线

该文本拥有下划线

快捷键:选中文本Ctrl + U

斜体
*斜体文本*

斜体文本

快捷键:选中文本Ctrl + I

引用
// 有几个“>”就有几层引用
> 作者: 孙不坚1208
>> 邮箱: [email protected]

作者:孙不坚1208

邮箱: [email protected]

分割线
可以使用以下两种方式
---
***
123


超链接
[urlName](url)

百度一下,你就知道

图片
远程图片 | 本地图片
引用形式: ![imgName](imgUrl)

百度logo

快捷方式:粘贴复制图片即可

无序列表
- 这是一个无序列表

  • 这是一个无序列表
有序列表
1.这是一个有序列表
  1. 这是一个有序列表

Typora快捷键

  • 有序列表:输入数字+“.”之后输入空格
  • 任务列表:-[空格]空格 文字
  • 标题:ctrl+数字
  • 表格:ctrl+t
  • 生成目录:[TOC]按回车
  • 选中一整行:ctrl+l
  • 选中单词:ctrl+d
  • 选中相同格式的文字:ctrl+e
  • 跳转到文章开头:ctrl+home
  • 跳转到文章结尾:ctrl+end
  • 搜索:ctrl+f
  • 替换:ctrl+h
  • 引用:输入>之后输入空格
  • 代码块:ctrl+alt+f
  • 加粗:ctrl+b
  • 倾斜:ctrl+i
  • 下划线:ctrl+u
  • 删除线:alt+shift+5
  • 插入图片:直接拖动到指定位置即可或者ctrl+shift+i
  • 插入链接:ctrl+k
  • 查看隐藏左侧结构图:ctrl + shift + 1
  • 从代码块跳到文本区域:ctrl + enter
  • 查看文档代码:ctrl + /
  • 快速添加表格:ctrl + T

常用快捷键及常用Dos命令

**正斜杠/和反斜杠\ **

Win+E 快速打开 我的电脑

Ctrl +Shift+Esc 快速打开任务管理器

打开cmd的方式:

  1. 开始+系统+命令提示符

  2. win键+R 输入cmd打开控制台(推荐使用)

  3. 在任意的文件夹下面,按住shift键+鼠标右键点击:在此处打开命令行窗口

  4. 在资源管理器的地址栏前面加上cmd路径

    (管理员方式运行:在开始搜索cmd,然后点鼠标右键,选择以管理员的身份运行)

常用的Dos命令

#盘符切换:C: D: E:
#查看当前目录下的所有文件 dir
#切换目录: cd (change directory):
1、跨盘符切换:cd + /d + 文件名;
2、同级目录切换:
(1)先返回上一级目录:cd …
(2)再进入想进入的目录 cd + 文件名
#清理屏幕:cls(clear screen)
#退出终端:exit
#查看电脑的ip:ipconfig
#很常用的windows程序:计算器(calc),记事本(notepad),画图工具(mspaint)
#ping命令:测试网络是否正常
#创建文件夹:md + 文件夹名
#删除文件夹:rd + 文件夹名
#创建文件:cd>文件名.扩展名
#删除文件:del + 文件名

JAVA

java帝国来历

JAVA三大版本以及 JDK JRE JVM

  • JavaSE:标准版(桌面程序、控制台…)
  • JavaME:嵌入式开发(小设备、手机、小家电…)基本被淘汰
  • JavaEE:企业级开发(web端、服务器开发…)

JDK:Java Development Kit

含义:Java开发工具包

在JDK的安装目录下有一个jre目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib合起来就称为jre.

JRE:Java runtime environment

含义:Java运行环境

JRE包含JVM标准实现及Java核心类库。JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器).

JVM:Java Virtual Machine

含义:Java虚拟机

JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

三者关系

【详细+超基础】Java-学习笔记_第2张图片

简单来讲

【详细+超基础】Java-学习笔记_第3张图片
【详细+超基础】Java-学习笔记_第4张图片

JDK 、JRE 与JVM之间的关系及区别

JDK、JRE和JVM三者之间的关系

开发环境及测试

jdk-8u271-windows-x64

环境变量

1.配置环境变量JAVA_HOME
变量值为所安装jdk的路径
C:\ProgramFiles\Java\jdk1.8.0_201
2.配置环境变量path
变量值为所安装jdk的bin的路径
C:\ProgramFiles\Java\jdk1.8.0_201\bin

用dos命令实现编译运行一个hello类

在D:\code 下写一个hello类

public class hello {
     
    public static void main(String[] args) {
     
        System.out.println("hello word");
    }
}

用dos命令

D:\code>javac hello.java 编译程序

D:\code>java hello 运行程序

开发工具

IDEA eclipse

关于在IDEA中编写Java的一些快捷键

IDEA常用快捷键

快捷键 作用
Ctrl+Y 删除光标所在行
Ctrl+D 复制光标所在行并插入到光标下一行
Ctrl+X 删除行
Ctrl+Alt+L 格式化代码
Ctrl+/ 注释单行代码或取消单行注释
Ctrl+Shift+/ 注释多行代码或取消注释多行代码
Alt+Shift+上下箭头 移动当前代码行
Shift + F6 同时更改同名变量
Ctrl + 上下键 上下移动代码,光标位置不变
Ctrl+Up/Down 光标跳转到当前所显示代码的第一行或最后一行
Alt + 上下键 在方法间快速移动
Ctrl+W 选中代码,连续按会有其他效果
双击Shift 在项目的所有目录查找文件或代码
快捷键 作用
输入 psvm + 回车main+回车 生成main方法
输入 sout + 回车 生成 System.out.println();
输入fori + Tab 生成 for (int i = 0; i < ; i++) { }
输入 正整数.foriint变量名.fori 再回车 生成 for (int i = 0; i < 正整数; i++) { }for (int i = 0; i < int变量名; i++) { }
Ctrl+Alt+O 优化导入的类和包
Alt+Enter 导入包或自动纠错
Alt+Insert 自动生成代码(Getter、Setter和toString方法)
Alt+/ 代码提示

注释

// 	单行注释

/* 
	多行注释
*/

文档注释:以 /** 开始,以 */结束
/**
	文档注释
*/
    

Java基础

一、标识符

(一)标识符

标识符必须以字母、下划线、美元符号$开头。
标识符其他部分可以是字母、下划线美元符和数字任意组成
Java标识符大小写敏感,且长度无限制
标识符不可以是Java的关键字

(二)标识符使用给范

表示类名的标识符:每个单词的首字母大写。
表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写。
如:eat()eatFood()

(三)Java中的关键字

53个关键字

【详细+超基础】Java-学习笔记_第5张图片

二、变量

(一)变量的本质

变量作为程序中最基本的存储单元,要素包括:变量类型,变量名,作用域

1. 局部变量

方法或语句内部定义的变量,必须先声明后赋值。

2. 成员变量

方法外部、类的内部定义的变量,成员变量会自动初始化

3.静态变量

使用static定义,从属于类

变量和常量命名规范

  1. 所有变量、方法、类名:见名知意
  2. 类成员变量:首字母小写驼峰原则:monthSalary
  3. 局部变量:首字母大写驼峰原则
  4. 常量:大写字母下划线:MAX_VALUE
  5. 类名:首字母大写驼峰原则
  6. 方法名:首字母小写驼峰原则:run(),runRun()

三、基本数据类型

(一)基本数据类型

【详细+超基础】Java-学习笔记_第6张图片

byte:1个字节 short:2个字节 int:4个字节 long:8个字节
float:4个字节 double:8个字节
char:2个字节 boolean:1位
引用数据类型:4个字节,用来代表对象的地址

1. 整型变量/常量

【详细+超基础】Java-学习笔记_第7张图片

十进制整数,如:99,-500,0
八进制整数,要求以0开头,如:015
十六进制数,要求 0x 或 0X 开头,如:0x15
二进制数,要求 0b 或 0B开头 如:0b01110011

2. 浮点类型

在这里插入图片描述

十进制数形式,如:3.14 314.0 0.314
科学计数法形式,如314e2 314E2 314E-2
(e2 = 10^2 E-2 = 10^(-2))

**注意:**浮点型变量不精确不能用于比较,如果要用于比较需要用到java.math包下的连个有用的类BigInteger和BigDecimal

3. 字符型变量/常量

在内存中占2个字节,用Unicode编码表
Unicode具有从0到65535之间的编码,他们通常从’\u000’ 到 ‘\uFFF’ 之间的十六进制值来表示(前缀u表示Unicode)

转义字符

转义字符
转义符 含义 Unicode****值
\b 退格(backspace) \u0008
\n 换行 \u000a
\r 回车 \u000d
\t 制表符(tab) \u0009
\” 双引号 \u0022
\’ 单引号 \u0027
\\ 反斜杠 \u005c

4. boolean类型变量/常量

在内存中占一位(不是一个字节)不可以使用0或非0的整数来代替true和false,这点和C语言不同。boolean类型用来判断逻辑条件,一般用于程序流程控制

四、运算符

【详细+超基础】Java-学习笔记_第8张图片

二元运算符的运算规则

整数运算:

  1. 如果两个操作数有一个为Long,则结果也为Long
  2. 没有Long时,结果为int。即使操作数全为short,byte,结果也是int

浮点运算:

  1. 如果两个操作有一个为double,结果为double。
  2. 只有两个操作数都是float,则结果才为float。

字符串连接符

【详细+超基础】Java-学习笔记_第9张图片

运算符优先级

【详细+超基础】Java-学习笔记_第10张图片

逻辑与、逻辑或、逻辑非的优先级一定要熟悉!(逻辑非>逻辑与>逻辑或)。

如:a||b&&c的运算结果是:a||(b&&c),而不是(a||b)&&c

条件运算符

X ? Y : Z

五、自动类型转换

自动转换按从低级到高级顺序:

【详细+超基础】Java-学习笔记_第11张图片

自动转换有以下规律:

  • 小的类型自动转化为大的类型

  • 整数类型可以自动转化为浮点类型,可能会产生舍入误差

byte A = 70;

int B = A ;
//即B为int类型的70。

六、强制类型转换

(type) 变量

强制转换类型,在要强制转换类型的前面加上括号,然后再括号里面加上你要转换的类型。

例如:

int A= (int) 11.7;

int B = (int) -21.6;
/*
结果:
A=11 B=-21
*/

七、流程控制语句

(一)选择语句

1. if 单选择结构

if(布尔表达式){
     
    语句块...
}

2. if - else 双选择结构

if(布尔表达式){
     
	语句块...
} else {
     
	语句块...
}

3. if - else if - else 多选择结构

if(布尔表达式){
     
	语句块...
} else if(){
     
	语句块...
} else {
     
	语句块...
}

4. switch结构

switch(表达式){
     
    case1:
        语句序列1;
        [break];
    case2:
        语句序列2;
        [break];
    [default:
        语句序列3;]
}

(二)循环结构

  • while循环
while(布尔表达式){
     
    循环体;
}
  • do - while 循环
do{
     
    循环体;
} while(布尔表达式);
  • for 循环
for(初始语句;布尔表达式;语句2){
     
    循环体;
}
  • 增强for循环
for(A:B){
     
    循环体;
}

break、continue 语句

break
break关键字常见用法:循环中一旦执行break语句,则与break一起的当前循环立刻结束。打断循环。

public class CountinueDemo {
     
 
	public static void main(String[] args) {
     
		//寻找0-10不能被3整除的数
		for(int i=0;i<=10;i++)
		{
     
			if(i%3==0)
			{
     
				continue;
			}
			System.out.println(i);
		}
	}
    /*结果如下
    4
    5
    7
    8
    9 
    */

continue
continue和break不一样,continue是跳过该层循环下的剩余内 容,继续下一次循环。

	public static void main(String[] args) {
     
		for(int i=0;i<=10;i++)
		{
     
			if(i%3==0)
			{
     
				break;
			}
			System.out.println(i);
		}
	}
 
}
/*结果如下

*/

你可能感兴趣的:(Java,java,编程语言,notepad++,jre,jvm)