大致内容
- java 基础:运算符 循环语句等->注意&&与&的区别(遇x则停和不停)
- 注意不同类型赋值的精度问题:结合位数记->byte 1 short 2 int 4 double 8 float 要加f
- 方法封装代码注意事项:exchange方法->注意局部变量
- 细讲ifloop loop 循环的讲解
- 细讲 关联 与 依赖 的区别:依赖需要对象传入 关联是属性或方法有联系:比如A类方法有B类的属性
- 细讲static continue break
- 内存模型图(Student s=new Student(30,40))的执行内部细节
- 类和对象 :分析和创建类,public 类 构造函数 private 属性 以及 方法名 书写规范
- 寄居蟹方法:不会对类造成影响,可以随便移动。eg:math里面的部分运算方法
- static可以有局部变量,静态变量 不能有成员变量:成员变量在对象创建之前,
- 什么时候用static->eg:寄居蟹方法/模拟数据库
- this 的两种用法:无参构造函数调用有参构造函数,this.age=age赋值
重点:内存模型图:了解程序运行数据在 静态方法区 栈区 堆区 的 存储情况 (方法都是压栈)
- 已程序为例 main(){Student s=new Student(10,30,40);}
- 1.main()方法入栈 碰到Student在硬盘当前目录找到Student 类并加载到 静态方法区 同时在堆区第一次初始化
- 2.静态方法区(目前有类的基本信息)碰到构造函数->压栈->取到参数->对堆中的属性赋值(第二次初始化) 然后方法弹出
- 3.最后在栈区保存一个s对象指向堆区的数据
- static在创建对象(new)时,就运行啦。(题外话)
类基本属性:变量 构造函数 方法
关于this的两种用法
- 有无参构造函数调用有参构造函数
1
2
3
4
5
6
7
8
9
10
11class demo{
int a;
int b;
demo(){
this(100,100)
}
demo(int a,int b){
this.a=a;
this.b=b;
}
}
static :占啦生命周期的1/3 里面运行寄居蟹方法最为合适
- static块不能有new之后才产生的变量 eg:r
- 将变量 方法定义为static
1 | public class StaticDemo |
关于for循环的练习:乘法口诀表
1 | public class DaoShanJiao { |
25匹马选3 一次赛5个(不可测速度,只能测快慢)->7次
- 1,分5组 5次 得到5个第一->再测->淘汰最后两组
- 2.存在top1所在的组的第二名>top2 存在top2所在的组的第二名>top3
- 3.再测一次,决定2,3名
一个不错的例子:数组类构造函数与内部类构造函数的执行先后顺序
1 | class Book{ |