JAVA知识回顾-第四天
Exception与Error包结构
- 基类为Throwable,Exception与Error都继承了Throwable
- Error类体系描述了Java运行系统中的内部错误,一般都是由JVM抛出,一般我们都不关注
- Exception类体系,如RuntimeException和IOException等继承与它,一般都是由于程序本身的因数或是外部环境因数造成,这是我们需要关注尽量解决的异常
OOM(out of memory内存溢出)的一些情况
- 一般最多情况我们会在加载图片上可能遇到
- 处理一些消耗内存的都有可能导致OOM
- 几点建议:
- 不再使用尽快释放,即设置成null。若不然资源回收会受到一定影响
- 尽量少用static方法和static成员。
- 不再使用的bitmap应手动调用recycle方法,并设置成null
- 耗费内存不必一直存在的对象
- 原因详细介绍与建议
Java面向对象的三个特征与含义
- 封装:将可以描述这一类事物的属性和行为归纳到一个类中,以方便使用,提高了代码的利用和效率,降低了代码的重复。
- 继承:封装的属性和行为没有包含到具体某一事物,这时我们就需要继承与封装类添加这一具体事物所独有的特征。
- 多态:多态是以封装和继承为基础的,多态是站在一个抽象的层面去实施一个统一的行为,具体到个体时这个统一的行为会施行自己的特征行为。
Override和Overload的含义与区别
- Override(重写、覆盖)
- 方法名、参数、返回值相同
- 存在于子父类之间
- 定义成final不能被覆写
- 子类方法不能缩小父类的访问权限
- 子类不能抛出比父类更多的异常
- Overload(重载,过载)
- 参数类型、个数、顺序至少一个不同
- 返回值不同是不行的
- 存在于子类、父类、同类
- 区别
- Override是子类与父类之间的多态表现,Overload是一个类中的多态
- 其他区别以上方两点可以清楚比较(~ ̄▽ ̄)~
我的感受
- OOM是内存溢出,最近才知道
~~(>_<)~~ - 我理解的多态说来就是:1、父类:人;2、子类:教练、运动员;3.我们就单单看他们的行为,从人(父类)的层次他们都是在做事。具体到子类时,教练在训练运动员,运动员在锻炼自己。多态说白了就是因为我们所处的位置不同,因而看到的层次就不同。
- 重写和重载是完全不同的概念,不要搞混了,重写是相同的方法,重载是名字相同的不同方法
想说的话
- 博客坚持写,今后学习了新的东西就在这里记录一下,以便今后回顾,也希望小小笔记能帮助你们
- 若内容有什么地方不对、不清楚,还望吐槽,希望大家能一起成长
- 来一个:不要成为那种隐藏在办公室不起眼的角落里,在点餐时才冒出来的人。躲在角落里的程序员往往被短视、与世隔绝、与大家脱节。