目标
掌握 Java 基本的语法---注释、标识符、变量、类型
掌握 Java 语言中的运算符、流程控制语句
难以避免的语法陷阱
掌握 Java 中如何进行内存操作(重点)
1、掌握 Java 基本的语法---注释、标识符、变量、类型
注释 添加注释 取消注释
单行注释:// Ctrl+/ Ctrl+/
多行注释:/* */ Ctrl+Shift+/ Ctrl+Shift+\
文档注释:/** */
使用javadoc命令建立HTML格式的程序文档
javadoc [options] [packagenames] [sourcefiles] [@files]
---------------------------------
1,什么是标示符?
在java语言中用来给一个类、变量或方法命名的符号
2,标示符的命名规则:
以字母, “_” 或 “$”符号开头
可以包含字母、 “_” 、“$”和数字符号
大小写敏感
不能与保留关键字冲突
没有长度限制
---------------------------------
关键字列表:
abstract boolean break byte case
catch char class continue default
do double else extends enum
false final finally float
for if implements import
instanceof int interface long
native new null package private
protected public return short static
super switch synchronized this
throw throws transient true try
void volatile while
Java 中 true false 不是关键字,而是boolean类型的字面量
保留字:const,goto
所有的关键字都是小写,friendly,sizeof不是java的关键字
---------------------------------
数据类型
Java 中只有两大数据类型,
一 用于科学计算的“原始”(基础)数据类型;
byte(8) short(16) int(32) long(64)
float(32) double(64) char(16) boolean
(1)int 类型如何在内存中存储
int num = 5; //分配 32bit 空间?,需要转化为 二进制后存储
5 ==>4+1=2(2次方)+2(0次方)==>...0000 0000 0000 0101
(2)char 与 String
刘 <==(一个中文对应两个 Unicode 码)==>\ufffd\ufffd
一个 char 类型可以存储一个中文,因为 char 类型长度
0--65535 ,存储中文必须加 单引号 ''
char name = '刘'; <===>char name='\ufffd\ufffd';
(3)char 类型与 int 类型可以通用,因为每个 char 都有
一个 Acsii 表中的整数对应。
char c='a';
int n =c+16; //113 也可以是 'q'
原始数据类型,从计算机刚刚出现有已经存在,相对计算机
的发展史,算得上原始。
这些原始数据类型不是对象,没有对应的方法可以调用。
二 用于 Java 面向对象编程的 引用数据类型;
引用数据类型(reference type)
---------------------------------
转义字符,一般情况下,不方便直接输出的内容,比如 换行
、双引号、tab制表符
转义字符 描述
\ddd 1到3位8进制数所表示的字符(ddd)
\uxxxx 1到4位16进制数所表示的字符(xxxx)
\’ 单引号字符
\’’ 双引号字符
\\ 反斜杠字符
\r 回车
\n 换行
\f 走纸换页
\t 横向跳格
\b 退格
\u 代表十六进制数 \ufffd
\d 代表八进制数
int ia = 0x55; //十六进制
int ib = 011; //八进制
byte bb = 0x771;
byte ba = (byte)0x771;
long la = 1234567L; //十进制
进制转换:
(1)默认可以从低位直接转向高位,不丢失精度;
(2)从高位到低位转化,需要强制声明,可能会丢失精度
---------------------------------
1,正整数,存储该数字的二进制原码。
2,负整数,存储该数字的二进制补码。
正整数
short a=57;
0000 0000 0011 1001 二进制整数,最前面的 0 是符号位
2(5)+2(4)+2(3)+2(0) = 57
负整数 ,二进制符号位要变为 1,
1111 1111 1100 0110 对正整数,按位取反,把符号位变为 1
-按位取反,二进制转化为十进制计算,得到结果
2、掌握 Java 语言中的运算符、流程控制语句
Java 中运算符与其他语言一直
^ 异或:同真、同假 ,结果为真;
5^2=8
0101
^ 0010
-------
1000 2(3)=8
int a=5; int b= 4; ==> a=4;b=5;
不用第三个变量,交换两个变量的值。
(1)常规做法,第三变量 c=a;a=b;b=c;
(2)用加法 a=a+b; b=a-b; a=a-b;
(3)用异或 a=a^b; b=a^b; a=a^b;
--------------------------------
分支语句:if-else, switch-case
2循环语句:for, while, do-while
3 循环跳转语句: break, continue, label:
break
(1)不带符号
int n=13;
boolean flag=true;
for(int i=2;i<=n/2;i++){
if(n%i==0){
flag=false;
break; //只中断一层循环
}
}
System.out.println(n+(flag?” is”:”is not”)+
” a prime number”);
(2)带符号,可以跳转到任意层次的循环中
first:for(int j=0;i<10;j++){
for(int i=2;i<=n/2;i++){
if(n%i==0){
flag=false;
break first;
}
}
}
3、难以避免的语法陷阱
(1)对 API 掌握不够详细
(2)对细节不够注意
(3)主观判断错误
4、掌握 Java 中如何进行内存操作(重点)
程序运行时,JVM 中的内存分配
----------------------
三 堆区:创建的对象 |
|
----------------------
二 栈区:程序中的变量 |
|
----------------------
一 代码块:Java代码 |
|
----------------------
掌握 Java 基本的语法---注释、标识符、变量、类型
掌握 Java 语言中的运算符、流程控制语句
难以避免的语法陷阱
掌握 Java 中如何进行内存操作(重点)
1、掌握 Java 基本的语法---注释、标识符、变量、类型
注释 添加注释 取消注释
单行注释:// Ctrl+/ Ctrl+/
多行注释:/* */ Ctrl+Shift+/ Ctrl+Shift+\
文档注释:/** */
使用javadoc命令建立HTML格式的程序文档
javadoc [options] [packagenames] [sourcefiles] [@files]
---------------------------------
1,什么是标示符?
在java语言中用来给一个类、变量或方法命名的符号
2,标示符的命名规则:
以字母, “_” 或 “$”符号开头
可以包含字母、 “_” 、“$”和数字符号
大小写敏感
不能与保留关键字冲突
没有长度限制
---------------------------------
关键字列表:
abstract boolean break byte case
catch char class continue default
do double else extends enum
false final finally float
for if implements import
instanceof int interface long
native new null package private
protected public return short static
super switch synchronized this
throw throws transient true try
void volatile while
Java 中 true false 不是关键字,而是boolean类型的字面量
保留字:const,goto
所有的关键字都是小写,friendly,sizeof不是java的关键字
---------------------------------
数据类型
Java 中只有两大数据类型,
一 用于科学计算的“原始”(基础)数据类型;
byte(8) short(16) int(32) long(64)
float(32) double(64) char(16) boolean
(1)int 类型如何在内存中存储
int num = 5; //分配 32bit 空间?,需要转化为 二进制后存储
5 ==>4+1=2(2次方)+2(0次方)==>...0000 0000 0000 0101
(2)char 与 String
刘 <==(一个中文对应两个 Unicode 码)==>\ufffd\ufffd
一个 char 类型可以存储一个中文,因为 char 类型长度
0--65535 ,存储中文必须加 单引号 ''
char name = '刘'; <===>char name='\ufffd\ufffd';
(3)char 类型与 int 类型可以通用,因为每个 char 都有
一个 Acsii 表中的整数对应。
char c='a';
int n =c+16; //113 也可以是 'q'
原始数据类型,从计算机刚刚出现有已经存在,相对计算机
的发展史,算得上原始。
这些原始数据类型不是对象,没有对应的方法可以调用。
二 用于 Java 面向对象编程的 引用数据类型;
引用数据类型(reference type)
---------------------------------
转义字符,一般情况下,不方便直接输出的内容,比如 换行
、双引号、tab制表符
转义字符 描述
\ddd 1到3位8进制数所表示的字符(ddd)
\uxxxx 1到4位16进制数所表示的字符(xxxx)
\’ 单引号字符
\’’ 双引号字符
\\ 反斜杠字符
\r 回车
\n 换行
\f 走纸换页
\t 横向跳格
\b 退格
\u 代表十六进制数 \ufffd
\d 代表八进制数
int ia = 0x55; //十六进制
int ib = 011; //八进制
byte bb = 0x771;
byte ba = (byte)0x771;
long la = 1234567L; //十进制
进制转换:
(1)默认可以从低位直接转向高位,不丢失精度;
(2)从高位到低位转化,需要强制声明,可能会丢失精度
---------------------------------
1,正整数,存储该数字的二进制原码。
2,负整数,存储该数字的二进制补码。
正整数
short a=57;
0000 0000 0011 1001 二进制整数,最前面的 0 是符号位
2(5)+2(4)+2(3)+2(0) = 57
负整数 ,二进制符号位要变为 1,
1111 1111 1100 0110 对正整数,按位取反,把符号位变为 1
-按位取反,二进制转化为十进制计算,得到结果
2、掌握 Java 语言中的运算符、流程控制语句
Java 中运算符与其他语言一直
^ 异或:同真、同假 ,结果为真;
5^2=8
0101
^ 0010
-------
1000 2(3)=8
int a=5; int b= 4; ==> a=4;b=5;
不用第三个变量,交换两个变量的值。
(1)常规做法,第三变量 c=a;a=b;b=c;
(2)用加法 a=a+b; b=a-b; a=a-b;
(3)用异或 a=a^b; b=a^b; a=a^b;
--------------------------------
分支语句:if-else, switch-case
2循环语句:for, while, do-while
3 循环跳转语句: break, continue, label:
break
(1)不带符号
int n=13;
boolean flag=true;
for(int i=2;i<=n/2;i++){
if(n%i==0){
flag=false;
break; //只中断一层循环
}
}
System.out.println(n+(flag?” is”:”is not”)+
” a prime number”);
(2)带符号,可以跳转到任意层次的循环中
first:for(int j=0;i<10;j++){
for(int i=2;i<=n/2;i++){
if(n%i==0){
flag=false;
break first;
}
}
}
3、难以避免的语法陷阱
(1)对 API 掌握不够详细
(2)对细节不够注意
(3)主观判断错误
4、掌握 Java 中如何进行内存操作(重点)
程序运行时,JVM 中的内存分配
----------------------
三 堆区:创建的对象 |
|
----------------------
二 栈区:程序中的变量 |
|
----------------------
一 代码块:Java代码 |
|
----------------------

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



