知识点梳理
day01
Java开发的三个步骤
1. 编写代码
2. 编译代码:编译的指令: javac 文件名.java
3. 运行代码:运行的指定: java 类名
概念: 对代码的一种解释说明
分类:
1. 单行注释:// 注释信息
2. 多行注释:/*注释信息*/
3. 文档注释:/**注释信息*/
关键字概念: 被Java赋予了特殊涵义的单词
怎样识别一个单词, 是否是关键字
1. 所有字母小写
2. 在高级代码编辑器中, 会有颜色的高亮显示(变色了)
常量概念: 在程序的执行过程中, 其值不会发生改变的数据
分类:
1. 字符串常量: 被双引号所包裹的内容
2. 字符常量: 被单引号所包裹的内容, 里面只能存放单个字符(多一
个,少一个都不行)
3. 整数常量: 所有整数
4. 小数常量: 所有小数
5. 布尔常量: true, false(如果单独打印布尔常量, 没有意义, 结合
后边要学习的关系运算符进行使用的)
6. 空常量:null (不能直接打印, 后续的数组课程讲解)
day02
变量概念: 变量就是内存中的空间, 空间有自己的名字, 空间内部所
记录的数据是经常发生改变的.
int a = 10;a = 20;a = 30;
变量的定义格式:
数据类型 变量名 = 数据值;
变量的注意事项:
1. 变量名不允许重复定义
2. 变量在使用之前, 一定要完成赋值.
3. 定义float类型的变量, 需要加入F的标识
4. 定义long类型的变量, 需要加入L的标识
字符串变量的定义:
String 变量名 = "字符串值";
类型转换 隐式转换 将取值范围小的数据, 给取值范围大的数据类型
赋值, 可以直接赋值
强制转换 将大的数据, 给小的数据类型赋值, 不能直接赋值, 需要
加入强制转换符
自增自减运算符
++在前, 会先完成变量的自身+1, 然后再进行运算
++在后, 就先将该变量原本记录的值, 提出出来, 做相应的操作, 随
后再进行
双与双或注意事项
&& : 当符号左边为false的时候, 右边就不再执行了 (短路效果)
左边为true, 右边继续执行.
|| : 当符号左边为true的时候, 右边就不执行了.
如果左边为false, 右边还是要继续执行.
1. default语句可以省略不写吗? 一定要放在switch的最后吗?
可以, 但是不建议, 因为需要使用default对外围外的错误值给出提示
不一定要放在最后编写, 但就算写在了第一行, 也是最后一个执行的
2. break语句可以省略不写吗?
可以, 但是会出现case穿透的现象
场景: 如果发现switch语句的case代码块中, 出现了重复的代码
就可以考虑使用case穿透的现象, 来优化代码.
3. switch语句, 小括号中, 可以接受的类型有哪些?
基本数据类型: byte short char int
引用数据类型: jdk5版本之后可以是枚举, jdk7版本之后可以是
String字符串.
三种循环的区别
1. (for和while)和do..while循环的区别
for循环和while循环, 都是在条件满足的情况下, 才会执行循环体 (
先判断, 后执行)
do..while循环, 无论条件是否满足, 都至少执行一次循环体 (先执行
, 后判断)
2. for 和 while 循环的区别
循环语句共同的特点: 在循环内部 [定义] 的变量, 循环结束后, 就
会丛内存中释放掉(消失)
for循环中, 用于控制循环的变量, 是写在循环内部的, 所以在循环结
束后, 就无法继续使用控制循环的变量.
循环嵌套:要知道内循环, 其实就是外循环的一个循环体任务而已.外
循环执行一次, 内循环执行一圈.
数组动态初始化:
格式: 数据类型[] 数组名 = new 数据类型[数组的长度];
静态初始化:
完整格式: 数据类型[] 数组名 = new 数据类型[]{元素1, 元素2, 元
素3...};
简化格式: 数据类型[] 数组名 = {元素1, 元素2, 元素3...};
两种初始化的区别 :
动态初始化 : 手动指定长度, 由系统给出默认初始化值.
静态初始化 : 手动指定元素, 由系统计算出数组的长度.
1. 键盘接受字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入星期数:");
// 如果键盘录入的是一个字符串的话, 就需要使用字符串String类型
的变量接受.
String week = sc.next();
2. 字符串的判断
字符串的比较判断, 不能使用 == 号进行.
3. 如果两个数组元素内容要进行比较, 数组长度相同的前提, 遍历哪
一个数组都是可以的.
原因: 内部的索引都是一样的.
4. ==号的比较:
基本数据类型: 比较的是具体的值
引用数据类型: 比较的是地址值.
1. 创建对象的格式
类名 对象名 = new 类名();
Teacher t = new Teacher();
System.out.println(t);// 打印的是对象的内存地址
com.itheima.object1.Teacher@178a36c
// com.itheima.object1.Teacher --> 全类名 (所在包名 + 类名)
调用成员变量的格式
对象名.变量名;
t.name = "张三";
System.out.println(t.name);
3. 调用成员方法的格式
对象名.方法名(实际参数);
t.teach();
1. private关键字
private是一个修饰符, 可以用于修饰成员 (成员变量, 成员方法)
特点: 只能在本类当中进行访问.
this作用: 用于区分局部变量和成员变量的重名问题
就近原则: 如果Java当中, 局部变量和成员变量出现了重名的问题,
会使用就近原则
问题: 构造方法的执行时机是什么?
在创建对象的时候, 由系统自动调用执行, 每创建一次对象, 就会执
行一次.
-------------根据执行时机思考构造方法的作用---------------
如果一个类中没有编写任何构造方法, Java会默认提供一个空参数的
构造方法, 供开发人员创建对象使用
如果手动给出了构造方法, 系统将不会再提供那个默认的空参构造了
6. 创建字符串对象的对比
直接赋值创建的字符串对象, 数据会存放在字符串常量池当中.
构造方法创建的字符串对象, 都带有new关键字, 所以会存放在堆内存
中单独的空间.
实际开发的时候, 字符串的比较, 不会使用==号比较地址
使用equals方法来比较字符串的内容
技术点和快捷键
System.out.println() 换行
System.out.print()不换行
使用idea时减号可以省略
"\t" :制表符 效果就是键盘的tab键
循环语句编写 可以先将一次运行的基本代码写好 写好后再搭建一个
循环语句 将先前写好的基本代码剪切进去即可.
循环嵌套里 break;只结束他所在的循环 如while(true){
while(true){
break;}
}
技术点:循环的标号,就是给循环起名字.(如需在循环步骤里结束循环
只需要在break后面加循环的标号即可)
Ctrl+r 替换所有相同的标识符
抽取方法的快捷键:Ctrl+Alt+m
构造方法和set,get方法快捷键:Alt+insert |
|