一、Java的特点
1、Java语言是面向对象的
2、Java语言是强壮的
3、Java语言是跨平台性的
4、Java语言是解释型的
二、Java核心机制
JDK = JRE + 开发工具箱
JRE = JVM + JavaSE标准库
三、编写第一个Java程序
写一个名为Hello的java程序,输出hello,world!
public class Hello{
public static void main(String[] args){
System.out.println("hello,world!");
}
}
1.public class Hello表示Hello是一个类,是一个public公有的类
2.Hello{}表示一个类的开始和结束
3.public static void main(String[] args)表示一个主方法,即我们程序的入口
4.main()表示方法的开始和结束
5.System.out..println("hello,world!");表示输出语句到屏幕
6.分号(;)表示语句结束

四、Java注意事项
1、Java区分大小写
2、类名必须以英文字母开头,后接字母,数字和下划线的组合 习惯性大写 例上图:(Hello)
3、所有的方法名都应该以小写字母开头,如果方法名含有若干单词,则后面的每个单词首字母大写
4、源文件名与类名必须相同 例上图:保存文件时应命名位Hello
5、Java有且只有一个public类 其他类个数不限
6、main方法有固定的书写格式
7、{} 、()、[ ]括号都是成对出现
五、Java组成
一个 Java 程序可以认为是一系列对象的集合
对象:对象是类的一个实例,有状态和行为。例如,一只猫是一个对象,它的状态有:颜色、名字、品种;行为有:喵叫等。
类:类是一个模板,它描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
六、Java标识符
Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
1、所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
2、首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
3、关键字不能用作标识符
4、标识符区分大小写
七、Java控制访问权限
| 访问控制 | private | 私有的 |
| protected | 受保护的 | |
| public | 公共的 | |
| default | 默认的 |
八、Java注释
注释快捷键:ctrl+/
1、单行注释: //

2、多行注释:/*
*/

3、文档注释(Java Doc标签):/**
*/

九、Java代码规范
1、类、方法注释要以Java Doc注释方式来写 即文档标签
2、非Java Doc注释,即单行注释/多行注释,往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
3、使用Tab键实现代码缩进(默认向右),使用shift+Tab键取消缩进(即向左)
4、运算符和=两边习惯性各加一个空格,使用快捷键Ctrl+Alt+L快速规范代码格式
5、源文件使用utf-8编码
6、行宽不要超过80个字符
7、代码编写风格分为次行风格和行尾风格,推荐使用行尾风格
次行风格:

行尾风格:

十、Java代码的编写步骤
1、编写Java的源代码
public class Hello{
public static void main(String[] args){
System.out.println("hello,world!");
}
}
2、Java.c编译,得到对应的.class字节码文件
在控制台(Win+R)输入javac Hello.java,将源文件编译成字节码文件,目录下会出现Hello.class文件表示编译成功


3、Java运行,本质就是把.class加载到jvm运用
运行字节码文件,在控制台输入java Hello

十一、Java变量
变量分为两种:基本类型的变量和引用类型的变量 变量必须先定义后使用 数字代表字节数

1、变量是程序的基本组成单位
2、变量的三个基本要素(类型+名称+值)
3、变量相当于内存中一个数据存储空间的表示
4、Java提供了8种基本类型,6种数字类型(4种整数,2种浮点数),1种字符型,1种布尔型)
(1)4种整数类型
| 整数类型 | 占用空间(字节) | 范围 | ||
| byte[字节] | 1 | -128~127 | ||
| short[短整型] | 2 | -2^15~2^15-1 | ||
| int[整型] | 4 | -2^31~2^31-1 | ||
| long[长整型] | 8 | -2^63~2^63-1 | ||
1、声明long型必须在后面在”l“或”L“

2、bit:计算机种最小的存储单位
byte:计算机种基本的存储单位
1 byte = 8 bit
(2)2种浮点数
5.12e2 5.12X10的2次方
5.12e-2 5.12/10的2次方
| 浮点数类型 | 占用空间(字节) | 范围 |
| 单精度:float | 4 | -3.403E38~3.403E38 |
| 双精度:double | 8 | -1.798E308~1.798E308 |
1、双精度的精度更准
2、浮点数的存放形式:浮点数+指数位+尾数位(可能丢失)
3、声明float型常量必须在后面加”f” 或“ F"

4、浮点数类型刚好是整数后面也会加.0 例:15会写成15.0

5、十进制形式,0可以省略 例:0.52 可以写成.52
6、double num = 8.1/3; 结果是一个接近2.7的小数而不是2.7

当我们对运算结果是小数进行相等判断时,应该是以两个数差值的绝对值,在某个精度范围判断
(3)1种字符型
1、char 存储单个字符(String是存储多个字符),char是两个字节可以存储汉字
2、char可以直接存放一个数字,输出是ASCII码
3、字符常量用单引号(‘ ’)括起来
4、char是可以进行运算的,进行运算后对照ASCII码输出
|
Bin (二进制) |
Oct (八进制) |
Dec (十进制) |
Hex (十六进制) |
缩写/字符 |
解释 |
|
0000 0000 |
00 |
0 |
0x00 |
NUL(null) |
空字符 |
|
0000 0001 |
01 |
1 |
0x01 |
SOH(start of headline) |
标题开始 |
|
0000 0010 |
02 |
2 |
0x02 |
STX (start of text) |
正文开始 |
|
0000 0011 |
03 |
3 |
0x03 |
ETX (end of text) |
正文结束 |
|
0000 0100 |
04 |
4 |
0x04 |
EOT (end of transmission) |
传输结束 |
|
0000 0101 |
05 |
5 |
0x05 |
ENQ (enquiry) |
请求 |
|
0000 0110 |
06 |
6 |
0x06 |
ACK (acknowledge) |
收到通知 |
|
0000 0111 |
07 |
7 |
0x07 |
BEL (bell) |
响铃 |
|
0000 1000 |
010 |
8 |
0x08 |
BS (backspace) |
退格 |
|
0000 1001 |
011 |
9 |
0x09 |
HT (horizontal tab) |
水平制表符 |
|
0000 1010 |
012 |
10 |
0x0A |
LF (NL line feed, new line) |
换行键 |
|
0000 1011 |
013 |
11 |
0x0B |
VT (vertical tab) |
垂直制表符 |
|
0000 1100 |
014 |
12 |
0x0C |
FF (NP form feed, new page) |
换页键 |
|
0000 1101 |
015 |
13 |
0x0D |
CR (carriage return) |
回车键 |
|
0000 1110 |
016 |
14 |
0x0E |
SO (shift out) |
不用切换 |
|
0000 1111 |
017 |
15 |
0x0F |
SI (shift in) |
启用切换 |
|
0001 0000 |
020 |
16 |
0x10 |
DLE (data link escape) |
数据链路转义 |
|
0001 0001 |
021 |
17 |
0x11 |
DC1 (device control 1) |
设备控制1 |
|
0001 0010 |
022 |
18 |
0x12 |
DC2 (device control 2) |
设备控制2 |
|
0001 0011 |
023 |
19 |
0x13 |
DC3 (device control 3) |
设备控制3 |
|
0001 0100 |
024 |
20 |
0x14 |
DC4 (device control 4) |
设备控制4 |
|
0001 0101 |
025 |
21 |
0x15 |
NAK (negative acknowledge) |
拒绝接收 |
|
0001 0110 |
026 |
22 |
0x16 |
SYN (synchronous idle) |
同步空闲 |
|
0001 0111 |
027 |
23 |
0x17 |
ETB (end of trans. block) |
结束传输块 |
|
0001 1000 |
030 |
24 |
0x18 |
CAN (cancel) |
取消 |
|
0001 1001 |
031 |
25 |
0x19 |
EM (end of medium) |
媒介结束 |
|
0001 1010 |
032 |
26 |
0x1A |
SUB (substitute) |
代替 |
|
0001 1011 |
033 |
27 |
0x1B |
ESC (escape) |
换码(溢出) |
|
0001 1100 |
034 |
28 |
0x1C |
FS (file separator) |
文件分隔符 |
|
0001 1101 |
035 |
29 |
0x1D |
GS (group separator) |
分组符 |
|
0001 1110 |
036 |
30 |
0x1E |
RS (record separator) |
记录分隔符 |
|
0001 1111 |
037 |
31 |
0x1F |
US (unit separator) |
单元分隔符 |
|
0010 0000 |
040 |
32 |
0x20 |
(space) |
空格 |
|
0010 0001 |
041 |
33 |
0x21 |
! |
叹号 |
|
0010 0010 |
042 |
34 |
0x22 |
" |
双引号 |
|
0010 0011 |
043 |
35 |
0x23 |
# |
井号 |
|
0010 0100 |
044 |
36 |
0x24 |
$ |
美元符 |
|
0010 0101 |
045 |
37 |
0x25 |
% |
百分号 |
|
0010 0110 |
046 |
38 |
0x26 |
& |
和号 |
|
0010 0111 |
047 |
39 |
0x27 |
' |
闭单引号 |
|
0010 1000 |
050 |
40 |
0x28 |
( |
开括号 |
|
0010 1001 |
051 |
41 |
0x29 |
) |
闭括号 |
|
0010 1010 |
052 |
42 |
0x2A |
* |
星号 |
|
0010 1011 |
053 |
43 |
0x2B |
+ |
加号 |
|
0010 1100 |
054 |
44 |
0x2C |
, |
逗号 |
|
0010 1101 |
055 |
45 |
0x2D |
- |
减号/破折号 |
|
0010 1110 |
056 |
46 |
0x2E |
. |
句号 |
|
0010 1111 |
057 |
47 |
0x2F |
/ |
斜杠 |
|
0011 0000 |
060 |
48 |
0x30 |
0 |
字符0 |
|
0011 0001 |
061 |
49 |
0x31 |
1 |
字符1 |
|
0011 0010 |
062 |
50 |
0x32 |
2 |
字符2 |
|
0011 0011 |
063 |
51 |
0x33 |
3 |
字符3 |
|
0011 0100 |
064 |
52 |
0x34 |
4 |
字符4 |
|
0011 0101 |
065 |
53 |
0x35 |
5 |
字符5 |
|
0011 0110 |
066 |
54 |
0x36 |
6 |
字符6 |
|
0011 0111 |
067 |
55 |
0x37 |
7 |
字符7 |
|
0011 1000 |
070 |
56 |
0x38 |
8 |
字符8 |
|
0011 1001 |
071 |
57 |
0x39 |
9 |
字符9 |
|
0011 1010 |
072 |
58 |
0x3A |
: |
冒号 |
|
0011 1011 |
073 |
59 |
0x3B |
; |
分号 |
|
0011 1100 |
074 |
60 |
0x3C |
< |
小于 |
|
0011 1101 |
075 |
61 |
0x3D |
= |
等号 |
|
0011 1110 |
076 |
62 |
0x3E |
> |
大于 |
|
0011 1111 |
077 |
63 |
0x3F |
? |
问号 |
|
0100 0000 |
0100 |
64 |
0x40 |
@ |
电子邮件符号 |
|
0100 0001 |
0101 |
65 |
0x41 |
A |
大写字母A |
|
0100 0010 |
0102 |
66 |
0x42 |
B |
大写字母B |
|
0100 0011 |
0103 |
67 |
0x43 |
C |
大写字母C |
|
0100 0100 |
0104 |
68 |
0x44 |
D |
大写字母D |
|
0100 0101 |
0105 |
69 |
0x45 |
E |
大写字母E |
|
0100 0110 |
0106 |
70 |
0x46 |
F |
大写字母F |
|
0100 0111 |
0107 |
71 |
0x47 |
G |
大写字母G |
|
0100 1000 |
0110 |
72 |
0x48 |
H |
大写字母H |
|
0100 1001 |
0111 |
73 |
0x49 |
I |
大写字母I |
|
01001010 |
0112 |
74 |
0x4A |
J |
大写字母J |
|
0100 1011 |
0113 |
75 |
0x4B |
K |
大写字母K |
|
0100 1100 |
0114 |
76 |
0x4C |
L |
大写字母L |
|
0100 1101 |
0115 |
77 |
0x4D |
M |
大写字母M |
|
0100 1110 |
0116 |
78 |
0x4E |
N |
大写字母N |
|
0100 1111 |
0117 |
79 |
0x4F |
O |
大写字母O |
|
0101 0000 |
0120 |
80 |
0x50 |
P |
大写字母P |
|
0101 0001 |
0121 |
81 |
0x51 |
Q |
大写字母Q |
|
0101 0010 |
0122 |
82 |
0x52 |
R |
大写字母R |
|
0101 0011 |
0123 |
83 |
0x53 |
S |
大写字母S |
|
0101 0100 |
0124 |
84 |
0x54 |
T |
大写字母T |
|
0101 0101 |
0125 |
85 |
0x55 |
U |
大写字母U |
|
0101 0110 |
0126 |
86 |
0x56 |
V |
大写字母V |
|
0101 0111 |
0127 |
87 |
0x57 |
W |
大写字母W |
|
0101 1000 |
0130 |
88 |
0x58 |
X |
大写字母X |
|
0101 1001 |
0131 |
89 |
0x59 |
Y |
大写字母Y |
|
0101 1010 |
0132 |
90 |
0x5A |
Z |
大写字母Z |
|
0101 1011 |
0133 |
91 |
0x5B |
[ |
开方括号 |
|
0101 1100 |
0134 |
92 |
0x5C |
\ |
反斜杠 |
|
0101 1101 |
0135 |
93 |
0x5D |
] |
闭方括号 |
|
0101 1110 |
0136 |
94 |
0x5E |
^ |
脱字符 |
|
0101 1111 |
0137 |
95 |
0x5F |
_ |
下划线 |
|
0110 0000 |
0140 |
96 |
0x60 |
` |
开单引号 |
|
0110 0001 |
0141 |
97 |
0x61 |
a |
小写字母a |
|
0110 0010 |
0142 |
98 |
0x62 |
b |
小写字母b |
|
0110 0011 |
0143 |
99 |
0x63 |
c |
小写字母c |
|
0110 0100 |
0144 |
100 |
0x64 |
d |
小写字母d |
|
0110 0101 |
0145 |
101 |
0x65 |
e |
小写字母e |
|
0110 0110 |
0146 |
102 |
0x66 |
f |
小写字母f |
|
0110 0111 |
0147 |
103 |
0x67 |
g |
小写字母g |
|
0110 1000 |
0150 |
104 |
0x68 |
h |
小写字母h |
|
0110 1001 |
0151 |
105 |
0x69 |
i |
小写字母i |
|
0110 1010 |
0152 |
106 |
0x6A |
j |
小写字母j |
|
0110 1011 |
0153 |
107 |
0x6B |
k |
小写字母k |
|
0110 1100 |
0154 |
108 |
0x6C |
l |
小写字母l |
|
0110 1101 |
0155 |
109 |
0x6D |
m |
小写字母m |
|
0110 1110 |
0156 |
110 |
0x6E |
n |
小写字母n |
|
0110 1111 |
0157 |
111 |
0x6F |
o |
小写字母o |
|
0111 0000 |
0160 |
112 |
0x70 |
p |
小写字母p |
|
0111 0001 |
0161 |
113 |
0x71 |
q |
小写字母q |
|
0111 0010 |
0162 |
114 |
0x72 |
r |
小写字母r |
|
0111 0011 |
0163 |
115 |
0x73 |
s |
小写字母s |
|
0111 0100 |
0164 |
116 |
0x74 |
t |
小写字母t |
|
0111 0101 |
0165 |
117 |
0x75 |
u |
小写字母u |
|
0111 0110 |
0166 |
118 |
0x76 |
v |
小写字母v |
|
0111 0111 |
0167 |
119 |
0x77 |
w |
小写字母w |
|
0111 1000 |
0170 |
120 |
0x78 |
x |
小写字母x |
|
0111 1001 |
0171 |
121 |
0x79 |
y |
小写字母y |
|
0111 1010 |
0172 |
122 |
0x7A |
z |
小写字母z |
|
0111 1011 |
0173 |
123 |
0x7B |
{ |
开花括号 |
|
0111 1100 |
0174 |
124 |
0x7C |
| |
垂线 |
|
0111 1101 |
0175 |
125 |
0x7D |
} |
闭花括号 |
|
0111 1110 |
0176 |
126 |
0x7E |
~ |
波浪号 |
|
0111 1111 |
0177 |
127 |
0x7F |
DEL (delete) |
删除 |
常用编码:
1、ASCII 编码表:一个字节表示,一共128个字符(实际上一个字节可以表示256个字符,但是只用了128个)
2、Unicode 编码表:固定大小的编码,使用两个字节(字母和汉字统一占用两个字节)
3、UTF-8 编码表:大小可变的编码,字母使用1个字节,汉字使用3个字节
4、GBK 编码表:可以表示汉字,字母使用1个字节,汉字两个字节
(4)1种布尔型
1、boolean型只允许取True / False 无null
2、boolean型只占一个字节
3、boolean适用于逻辑运算,一般用于程序流程控制
程序流程控制语句:
1、if 条件控制语句
①:单分支语句
if(<条件表达式>){
<条件成立(True),执行的代码块> }
public static void main(String[] args){
int a=5;
if(a>0){
System.out.println("a是正数");
}
}
②:双分支语句
if (<条件表达式>):
<条件成立(True),执行的代码块>
else:
<条件不成立(False),执行的代码块>
import java.util.Scanner;
public class Variable{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int num = sc.nextInt();
if (num % 2 == 0) {
System.out.println("这个数是一个偶数");
} else {
System.out.println("这个数是一个奇数");
}
}
}
③:多分支语句
一个if只能有一个else,但是可以拥有多个elif
if (<条件表达式>):
<条件表达式成立(True),执行的代码快>
elif (<条件表达式2>):
<条件表达式2成立(True),执行的代码快>
elif (<条件表达式3>):
<条件表达式3成立(True),执行的代码快>
else:
<以上条件都不成立(False),执行的代码快>
import java.util.Scanner;
public class Variable{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int num = sc.nextInt();
if (num > 0) {
System.out.println("这个数是一个正整数");
} else if (num < 0) {
System.out.println("这个数是一个负整数");
}
else {
System.out.println("这个数是0");
}
}
}
2、while 循环控制语句(结果为False一次也不执行)
先循环判断再执行
语法结构:
while(条件表达式) {
语句块;
}
public class While{
public static void main(String[] args) {
int i = 1;
int n = 1;
while(i <= 10) {
n=n*i;
i++;
}
System.out.println("10的阶乘结果为:"+n);
}
}
3、do-while循环控制语句(至少执行一次)
先执行再判断
语法结构:
do {
语句块;
}while(条件表达式);
public class Do_While{
public static void main(String[] args){
int number = 1,result = 1;
do {
result*=number;
number++;
}while(number <= 10);
System.out.print("10阶乘结果是:"+result);
}
}
4、for 循环控制语句
语法结构:
for(初始表达式 ; 布尔表达式 ; 步进){
循环体
}
public class Nine{
public static void main(String[] args){
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
System.out.print(i + "*" + j + "=" + (i*j) + "\t");
}
System.out.println();
}
}
}
类型相互转换:

1、精度小的类型自动转换为精度大的数据类型
2、多种类型数据混合运算时,系统首先自动将所有数据转换成大容量最大的那种数据类型,然后再进行计算
3、当我们把精度大的数据类型赋值给精度小的数据类型时就会报错,反之进行自动类型转换
4、(byte、short)与char之间不会相互自动转换
5、byte、short与char三者之间可以计算,在计算时首先转换为int类型
6、boolean不参与转换
7、自动提升原则:表达式结果的类型自动提升为操作数中最大的类型
这篇博客详细介绍了Java的基础知识,包括其特点、核心机制、编写第一个Java程序的步骤、编程注意事项、语言组成、标识符规则、控制访问权限、注释用法、代码规范以及变量类型。内容涵盖从Java的特点如面向对象、跨平台性,到如何创建并运行简单的Java程序,再到变量的四种整数类型、两种浮点数、一种字符型和布尔型,以及如何进行类型转换。此外,还强调了Java代码的编写规范和注释的使用方法。
基本语法&spm=1001.2101.3001.5002&articleId=123658932&d=1&t=3&u=c248035cb0214b99a1699fa04adffd71)
837

被折叠的 条评论
为什么被折叠?



