JAVA知识回顾-4(Exception、Error、OOM、Java面向对象特征含义、Override和Overload含义区别)
2015-11-21 12:24
495 查看
JAVA知识回顾-第四天
Exception与Error包结构
基类为Throwable,Exception与Error都继承了ThrowableError类体系描述了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.我们就单单看他们的行为,从人(父类)的层次他们都是在做事。具体到子类时,教练在训练运动员,运动员在锻炼自己。多态说白了就是因为我们所处的位置不同,因而看到的层次就不同。
重写和重载是完全不同的概念,不要搞混了,重写是相同的方法,重载是名字相同的不同方法
想说的话
博客坚持写,今后学习了新的东西就在这里记录一下,以便今后回顾,也希望小小笔记能帮助你们若内容有什么地方不对、不清楚,还望吐槽,希望大家能一起成长
来一个:不要成为那种隐藏在办公室不起眼的角落里,在点餐时才冒出来的人。躲在角落里的程序员往往被短视、与世隔绝、与大家脱节。
相关文章推荐
- Java 各种知识点 (慢慢总结)
- java.lang.OutOfMemoryError: GC overhead limit exceeded
- Java学习笔记
- java 接口
- eclipse log过滤
- 学习笔记1:Struts 2框架的搭建
- Java this关键字总结
- java中volatile关键字的含义
- java编程思想--21 并发
- MyEclipse new 后面的菜单选项设置
- 关于viewholder总是报Java.lang.NullPointerException。
- Java学习笔记(多态)
- Java工厂方法---Factory Method
- 《疯狂Java讲义》学习启动篇——向着更好的自己出发
- Java调用net的webservice故障排除实战分享
- SpringServletContext简单案例
- eclipse,工程/文件目录,相对路径(真心的详细~)
- Jvm(java)内存存储简单区分。
- 2014 抢票工具 纯java
- JAVA复制文件夹下所有内容