您的位置:首页 > 编程语言 > Java开发

JAVA知识回顾-4(Exception、Error、OOM、Java面向对象特征含义、Override和Overload含义区别)

2015-11-21 12:24 495 查看

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.我们就单单看他们的行为,从人(父类)的层次他们都是在做事。具体到子类时,教练在训练运动员,运动员在锻炼自己。多态说白了就是因为我们所处的位置不同,因而看到的层次就不同。

重写和重载是完全不同的概念,不要搞混了,重写是相同的方法,重载是名字相同的不同方法

想说的话

博客坚持写,今后学习了新的东西就在这里记录一下,以便今后回顾,也希望小小笔记能帮助你们

若内容有什么地方不对、不清楚,还望吐槽,希望大家能一起成长

来一个:不要成为那种隐藏在办公室不起眼的角落里,在点餐时才冒出来的人。躲在角落里的程序员往往被短视、与世隔绝、与大家脱节。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: