纯粹的面向对象程序设计的几个特性:
1. 万物皆对象
2. 程序是对象的合集,他通过发消息告诉彼此要做什么
3. 每个对象都有自己的由其他对象所构成的存储
4. 每个对象都有其类型
5. 某一特定类型的所有对象都可以接收同一类型的消息

每个对象都有一个接口
每个对象都有自己的服务(这个是为了高内聚性)
具体类的实现被隐藏,调用方不需要知道被调用方的具体实现
复用具体类实现 代码复用是面向对象程序设计的最了不起的优点之一
使用现有的类合成新的类,这种概念称作组合。如果组合是动态发生的,这个称作聚合。 组合关系在UML图中是通过实心菱形来实现的,例如每个汽车都有一个引擎,则UML图中,引擎一个实心菱形指向汽车。

继承:
继承的UML图是子类一个空心的三角箭头指向基类

“是一个”与“像是一个”的关系:
最完美的继承就是子类不存在新增加的方法,而是覆盖父类的方法,实现新的功能。这是一种是一个的关系,但实际上这个情况比较完美。更多的情况下,子类肯定有新增的方法,这个就是 像是一个 的关系。

伴随多态的可互换方法:
基类中的方法操作都是泛化的,不关心具体子类,而是子类公用的。而多态的实现依赖于编译器的后期绑定的实现。具体调用的对象在方法调用时才确定。
子类转换成基类的过程称为向上转型,有向上转型的需要时才使用继承。

单根继承结构:
在java中所有类都继承自Object类

容器:
好的OOP语言都有容器,用来实现存储对象的集合。

参数化类型:
为了减少从集合中放入或者取出数据的各种转型。

对象的创建和生命周期:
java完全采用了动态内存分配的技术,当你想创建对象的时候就必须使用new关键字来构建对象的动态实例。
在栈上创建的对象,编译器可以知道他的生命周期并且动态的销毁他们,而在堆上创建的对象,就需要靠垃圾回收机制来实现了。

异常处理,处理错误:
自编程语言面世以来,错误处理时最困难的问题之一。异常处理不是面向对象的特征之一。

并发:
java的并发是内置于语言中的。

最新文章

  1. 升级Windows 10 正式版过程记录与经验
  2. Intent传递list<bean>集合
  3. 易语言5.6 精简破解版[Ctoo]
  4. Yii2事务
  5. 一个CMS案例实战讲解PHP代码审计入门
  6. 8.mybatis动态SQL模糊查询 (多参数查询,使用parameterType)
  7. ODI 12.1.3创建standalone代理
  8. Python实现ORM
  9. ORACLE 重置SEQQUENCE
  10. ASP.NET网站中设置404自定义错误页面
  11. 获取集合、数组后要判断为空的必要性以及根据构造器创建对象后不是null的证实
  12. IE去掉input的type=”text”输入内容时出现的X和type=”password”出现的眼睛图标
  13. 大文件拆分问题的java实践(附源码)
  14. Redis事务原理分析
  15. 洛谷 [P1024]一元三次方程求解
  16. MYSQL数据库学习七 视图的操作
  17. shell丢弃信息
  18. Node.js学习起步
  19. Nginx入门安装升级
  20. win8以上windows系统eclipse环境下图片显示乱码问题解决

热门文章

  1. yum初识
  2. vim 命令全
  3. C#集合总结
  4. [UWP开发]在windows10中设置壁纸~UserProfilePersonalizationSettings
  5. pageadmin CMS网站建设教程:站点添加自定义字段
  6. 使用echarts绘制漂亮的渐变键盘仪表盘
  7. 「BZOJ1426」收集邮票
  8. iOS 设置 (plist)
  9. H - Graphics(dfs)
  10. webpack 踩的坑