8个月前
⋅
0
3.2
-
Java语言的特性
- 简单性
- 面向对象
- 健壮性
- 多线程
- 跨平台
-
JDK、JRE、JVM三者的关系
- JDK: java开发工具包
- JRE: java运行时类库
- JVM: Java虚拟机
三者关系:jdk 包含 jre,jre 包含 jvm
-
public class 和 class 区别
- public class
- public class不是必须的
- 在一个源文件中只能有一个 public class
- public class 的类名与源文件名必须一致
- 多class
- 一个 java 源文件中可以定义多个 class
- 一个源文件中类名不能重名
- 在任何一个 class 文件中都有一个程序的入口
-
八大基本数据类型 |
|
类型名称 |
占用字节 |
表示范围 |
表示 |
整数型 |
byte |
1 |
-128--127 |
0 |
|
short |
2 |
-32768 -- 32767 |
0 |
|
int |
4 |
-2147483648 - 2147483647 |
0 |
|
long |
8 |
-2^63 ~ 2^63-1 |
0L |
浮点型 |
float |
4 |
±1.18E-38 ~ ±3.40E+38 |
0.0f |
|
double |
8 |
±2.23E-308 ~ ±1.80E+308 |
0.0 |
布尔型 |
boolean |
1 |
true false |
false |
字符型 |
char |
2 |
2^16-1 【0--65535】 |
\u0000 |
-
数据类型转换
- 八大基本数据类型中只有boolean不能进行转换,剩下的七个都能互相转换!
- 相互转换:
- 自动类型转换:小容量转换为大容量
byte< short(char) <int < long<float < double
- 强制转换:大容量转小容量
- 当一个整数没有超出byte short char的取值范围,这个数据可以直接赋值给 byte short char类型的变量。
- 混合运算:
- 当byte short char 混合运算的时候,各自先转换为int再做运算!
- 多种数据类型混合运算的时候,各自都先转成容量最大的一种,再进行运算!
-
标识符的命名规则
- 标识符只能由数字、字母、下划线、美元符号组成,不能包含其他的特殊字符
- 标识符不能以数字开头
- java中标识符不能使用保留字
- 标识符严格区分大小写
- 标识符理论上没有长度限制
-
运算符举例
- 算术运算符:+ - * / %
- 关系运算符:> >= < <= == !=
- 逻辑运算符:&& || !
- 赋值运算符:= += -= *= /= %=
- 条件运算符: ? :
- 位运算符: << >>
- 字符串连接运算符: +
-
转向语句及其作用
- break:用于跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环。
- 只能在循环体内和switch语句内使用break。
- 不管是哪种循环,一旦在循环体中遇到break,系统将完全结束循环,开始执行循环之后的代码。
- 当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行!!!
- continue:作用是跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定。
- continue语句并没有使整个循环终止。
- continue 只能在循环语句中使用,即只能在 for、while 和 do…while 语句中使用。
-
断点调试(debug):可观察变量值和程序运行情况。
1.设置断点 断点:程序运行时暂停的代码行
2.启动调试
3.单步运行 【点击直角弯的箭头】
4.观察变量
5.发现问题
6.修正代码
7.取消断点
8.重新运行
3.3
-
什么是类什么是对象
- 类:是模板,是一类事物的抽象概念
- 属性: 类具有的特征,称为属性。属性用变量进行描述,称为实例变量。
- 方法: 类具有的行为操作,称为方法。
- 类 = 属性 + 方法。
-
如何定义类、如何定义方法
- 方法的语法
访问修饰符 返回值类型 方法名(形参列表1 ,形参列表2 ....){
//方法体 具体这个方法是做什么的
}
2. 类的语法
```java
public class 类名{// 首字母必须大写
//属性
int num;
String name;
//方法
public void sayHi(){
System.out.println("hi!");
}
}
-
对方法的各个部分分别进行解读
- 访问修饰符
![](https://cdn.nlark.com/yuque/0/2023/png/35205554/1677588992116-695b04b3-f64b-4ed5-bfde-2c5581d4e631.png#averageHue=%23f9f9f8&height=143&id=Mzl9B&originHeight=261&originWidth=756&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=none&title=&width=415)
- 返回值类型:方法结束后传出的数据
- 返回值可以为空(void):方法体中可选择是否用 return; 进行返回
- 不为空时要借助 return 返回值; 进行返回
- 返回值可以是java中的任意一种数据类型 (基本数据类型or引用数据类型)
- 方法名:合法的见名知义的标识符,要求 首字母要小写,其余单词首字母要大写
- 形参列表:
- 形参:数据类型 变量名
- 注意:
- 没有形参列表叫无参数的方法
- 只要形参列表存在就叫带参数的方法
- 可以有多个形参,用逗号进行分隔,最后一个形参列表后面没有逗号
- 方法体:具体的行为操作,不调用则不执行
3.7
- 接口的特性分别是什么
- 接口:
- 不可以被实例化
- 接口中所有的内容都是public:变量都是静态常量,方法都是public abstract
- 接口中的方法不能有方法体
- 接口之间支持多继承
- 实现类
- 必须实现接口中所有的方法
- 接口和类之间的关系是实现
- 实现类可以实现多个接口(单继承,多实现)
- 接口和抽象类有什么区别?
- 接口
- 是公开的,里面不能有私有的方法和变量,
- 实现类必须重写所有接口中定义的方法
- 接口可以实现多重继承
- 抽象类
- 可以有私有的方法和私有的变量
- 可以有选择重写需要用到的方法
- 类只能继承一个超类,但是可以通过继承多个接口实现
- 方法重写的注意事项有哪些?
- 注意事项:
- 必要条件:
- 存在父子类关系
- 与原方法具有相同的返回值、方法名、形参列表(建议开发的时候复制粘贴)
- 语法
- 私有方法、构造方法不能被继承,所以不能被重写
- 访问修饰符不能比原方法的访问权限低
- 静态方法不存在覆盖
- 不能比原方法抛出更多的异常
- 方法覆盖只是和方法有关,和属性无关。