面向对象的理解
2016-04-28 13:39
218 查看
前言
关于面向对象的概念,一直都是似懂非懂的状态,做次笔记方便日后温故而知新面向对象三大特征:
封装:解决了数据的安全问题.继承: 解决了代码的重用问题.
多态:解决了程序的扩展问题.
继承的概念:
在现实生活中,可以理解为儿子继承了父亲的财产。 财产的重用。在程序中是解决代码的重用问题
继承是利用现有的类创建新类的过程,现有的类称作基类(父类)。创建的新类称作派生类(子类)
基类(父类) ----> 派生类(子类) 方法+属性 -----> 基类的方法+基类的属性 + 自己的方法与属性
继承注意事项:
1.私有的属性和方法,不能继承
2.构造方法不能被继承,而且子类里面的构造方法,一定会调用父类的构造。如果没有,调用的是父类的空构造
3.静态的方法能被继承
4.子类除了可以继承得到父类的属性以及方法外,还能自己定义属性以及方法.
5.只能单继承,多实现 (c++可以有多继承)可以实现多个接口
6.继承是单向性的
人 学生 老师 大学生 研究生
最高层是最普通,最一般的。往下每一层都比上一层更具体,并且包含高层的特征。
通过这样的层次结构使下层的类能自动享用上层类的特点和性质.
继承的作用:
根本就是解决的代码的重用
实现了递增式的程序设计
能减少代码和数据的重复冗余度,并通过增强一致性来介绍模块间的接口和界面。从而增强了程序的可维护性
多态
重写、重载1.在继承中实现重载,方法名相同,参数不同
2.在继承中,方法名,参数,返回值必须相同。
3.重写目的,父类与子类需要实现相同的功能,但是表现不一样。
多态的概念:
相同或相似的代码,执行的结果不相同。重写与重载就是多态一种表现.
引用转型:
Person p = new Person();
如果是在继承中,是可以父类的引用指向子类的对象
例如,学生类继承人类
Person stu = new Student();
相关文章推荐
- Android触摸事件分发之View篇
- 电动滑板改装 特斯拉电机 120A FVT电调的使用
- iOS中通知中心(NSNotificationCenter)的使用总结
- Oralce9 的新方法: Merge into Using
- bootstrap3学习1:响应式布局layout
- 数据结构之位运算篇
- 深入Mysql字符集设置[精华结合]
- Node.js学习笔记
- 文件夹的拷贝
- 串口DCB结构详解
- (转)耶鲁大学教授:研究生做科研的11条军规
- EDB数据同步与备份
- mysql提示错误#42000You have an error in your SQL syntax; check the manual that corresponds
- chome 调试 js禁用缓存
- mysql慢查询设置
- 用css改变鼠标选中文字的样式
- PHP中的ORM
- 常见条码的解释
- apache config httpd.conf file防止目录列表被浏览、敏感目录或文件限制IP访问
- map/set iterator not incrementable set/map使用erase时注意事项!