JAVA WEB 项目结构
![在这里插入图片描述](https://img-blog.csdnimg.cn/32bfc2a02d494a269a57d145196e24e5.png
学习路线
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fe845147cdc14848bfd6e95f97994f21.png
数组
1、容器、相同的类型
2、以下标为0开始的基础
3、定义数组,
类型[] 名称 =new 类型[数字]
堆:heap
对象堆,对象在那边数组就在那边
堆栈溢出:heap overflow
stack overflow
数组和对象,通过nw 建立的实例都存放在堆内存中
每个实体都有存储地址值
实体中的变量都有默认的初始化的值
实体不在被使用,会在不确定的时间内被垃圾回收器回收
栈 :stack
用于存储内部的变量,当数据使用完,所占的攻坚会自动的释放
方法调用的顺序
方法栈
push stack 压栈
pop stack 弹栈
数组常见的错误
数组越界
ArrayIndexException
异常
NUllPointerException 空指针异常
折半查询/二分法
折半查询的条件是 有序的数列 while 循环
面向过程编程
c语言:面向方法。粒度
面向对象OOP
面向对象编程 :
面向对象的特征;
分装 继承 多态
类的属性— 成员变量
类的方法— 成员函数
成员变量
成员变量定义在类中,是整个类中都可以被访问
成员变量随着对象的建立而建立,存在于对象所在的堆内存中
成员变量都有默认的初始值
局部变量
局部变量只定义在局部的范围中
局部变量存在于栈内存中
作用的范围结束,变量的空间会自动的释放
局部变量没有默认的初始化值
构造函数
没有返回值
函数名和类名称相同
默认的构造函数是 无参的
匿名对象
没有变量名称接受
this
关键字,对象内部指向自身的一个指针