文章属于个人知识点总结
名字:不懂技术的计科毕业生
来源:尚学堂高棋老师的Java300课
1、面向对象和面向过程
面向过程:按步骤实现功能,一步一步完成,适合简单不需要协作的事务
面向过程:先设计好整体框架,然后一步一步的向里面添加东西
OOA:面向对象分析
OOD:面向对象设计
解决复杂的问题宏观上使用面向对象,微观上使用面向过程
2、对象(Object)
对象就是数据管理的方式
3、对象和类
对象:
在内存中是一个内存块,用来表示一堆相关联的数据,内存块中存放变量和方法
类:
对象的模板,对象的抽象
包含两种内容:属性和方法
4、内存分析
Java虚拟机内存可以分为三个区域:
栈(stack)、堆(heap)、方法区(method area)
栈:
①方法执行的内存模型
②JVM每个线程会创建一个栈
③栈属于线程私有,不能实现线程之间的共享
⑤由系统自动分配的连续的内存空间
堆:
①存储创建好的对象和数组
②JVM只有一个堆,被所有线程共享
③不连续的内存空间
方法区:
①JVM只有一个方法区,被所有线程共享
②方法区也是堆,只是用于存储类和常量的相关信息
③用来存放程序中永远不变和唯一的内容
5、构造方法
用于对象初始化
①通过new关键字调用
②方法名称和类名一致
③有返回值,但无返回值类型
④如果没有定义构造方法,则系统会自动生成一个无参的构造方法
6、构造方法重载
和方法的重载一样
构造方法的第一句永远是super();
7、垃圾回收机制
此处省略先不学,后面学会了java的基础内容后,再返回来学习垃圾回收
8、this关键字
this的本质:
创建好的对象的地址,在构造方法中,this代表当前对象,用于区分成员变量和局部变量。
this还可用于调用构造器,this(a,b)
this不能用于static方法中
9、static关键字
static声明的变量和方法是静态变量和方法,static修饰的成员变量,从属于类,普通变量和方法从属于对象。
10、静态初始化块
类初始化时执行
static{
}
11、参数传递机制
①基本数据传值
传递的值是副本,副本改变不会影响原件
②引用类型传值
传递的值是副本,但引用类型是指的对象地址
12、包
包机制是java中管理类的手段
package两个使用要点:
①通常是类的第一句非注释性语句
②包名:域名倒着写,再加上模块名,便于内部管理
13、JDK中主要的包
如若有和我一样大学没有学习好Java或者Java初学者的同学,可以加学期群:671941612