面向对象
内存管理
-
内存管理: 由JVM管理
-
堆:
-
存储new出来的对象(包括实例变量)
-
垃圾: 没有任何引用所指向的对象
垃圾回收器(GC)不定时到内存中清扫垃圾 回收过程是透明的
不一定发生垃圾立刻回收 通过调用System.gc()建议JVM调度GC回收
-
实例变量的声明周期:
创建(new)对象时存储在堆中 对象被回收时一并回收
-
内存泄漏: 不再使用的对象没有及时回收 严重的泄漏会导致系统崩溃
建议: 不再使用的对象应及时将引用设置为null
-
-
栈:
-
存储正在调用的方法中的局部变量(包括方法的参数)
-
调用方法时 会在栈中为该方法分配一块对应的栈帧 栈帧中存储局部变量(包括方法的参数) 方法调用结束时 栈帧被自动清除 局部变量一并清除
-
局部变量的声明周期:
调用方法时存储在栈中 方法调用结束时与栈帧一并被清理
-
方法区:
1.存储.class字节码文件(包括静态变量 所有方法)
2.方法只有一份 通过this来区分具体的访问对象
-
-
面向过程和面向对象
面向过程: C 去银行取钱(1.拿卡 2.出门 3.去银行 4.取钱 5.走人)—业务简单
以方法为单位来思考 解决问题的思想
面向对象: Java 造个汽车(车门 轱辘 发动机 玻璃)—业务复杂
以对象为单位来思考 解决问题的思想
面向对象三大特征
-
封装
- 类: 封装的是对象的属性和行为
- 方法: 封装的是具体的业务逻辑功能实现
- 访问控制修饰符: 封装的是具体的访问权限
-
继承
-
作用: 代码复用
原创文章,作者:506227337,如若转载,请注明出处:https://blog.ytso.com/275876.html
-