黑马程序员——java中的面向对象简介
来源:互联网 发布:网络赌钱为什么都是输 编辑:程序博客网 时间:2024/05/08 12:03
面向对象(Object Oriented,OO)简介:
定义:面向对象(Object Oriented,OO)是软件开过过程中使用一种思维方式 。
面向过程:强调功能行为,关注完成的过程
面向对象:将功能封装进对象,强调具备了功能的对象,不关注过程
面向对象与面向过程都是一种思想
面向对象是基于面向过程的
特点:
是一种更符合人们思考习惯的思想。
可以将复杂的事情简单化。
将程序由执行者转换成了指挥者。
面向对象完成需求:
明确开发功能需求。
查找具有该功能的类。
如果不存在满足功能的类,则定义这样的类。
创建该类对象,使用对象完成功能。
面向对象三大特征:
封装(encapsulation)
继承(inheritance)
多态(polymorphism)
封装(encapsulation)简介、代码实现及内存解析:
定义:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
优点:
将变化隔离
便于使用
提高重用性
提高安全性
原则:
将不需要对外提供的内容都隐藏起来。
把属性都隐藏,提供公共方法对其访问。
静态(static)关键字内存解析:
继承(inheritance)简介、代码实现及内存解析:
定义:
多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。
这多个类称为子类,单独这个类称为父类或者超类。
子类可以直接访问父类中非私有的成员变量与成员方法。
格式:
通过 extends 关键字让类与类之间产生继承关系
class SubDemo extends Demo{}
优点:
继承的出现提高了代码的复用性。
继承的出现让类与类之间产生了关系,是多态的前提之一。
弊端:
使类与类之间产生了更强的耦合性
特点:
java只支持单继承不支持多继承。
java支持多层继承。
任何类都直接或者间接继承自Object类。
注意事项:
不要为了某个功能而去继承,需要满足”is a”的关系。
引用类型变量被final修饰,不能再指向其他对象地址:
多态(polymorphism)简介、代码实现及内存解析:
定义:
某一种事物的多种形态。
前提:
需要存在继承或者实现关系。
要有方法覆盖操作,否则没有意义。
父类或者接口的引用指向自己的子类对象。
优点:
开发当中要符合开闭原则:对修改关闭,对扩展开放。
多态的存在提高了程序的扩展性和后期可维护性。
- 黑马程序员——java中的面向对象简介
- 黑马程序员——JAVA中的面向对象
- 黑马程序员——Java中的面向对象
- 黑马程序员——java面向对象
- 黑马程序员——java:面向对象
- 黑马程序员——Java面向对象
- 黑马程序员——java-面向对象
- 黑马程序员——JAVA面向对象
- 黑马程序员——JAVA面向对象
- 黑马程序员——java面向对象
- 黑马程序员——Java面向对象
- 黑马程序员—java面向对象一
- 黑马程序员—java面向对象二
- 黑马程序员 java基础<—>--->面向对象
- 黑马程序员—JAVA面向对象
- 黑马程序员—Java面向对象
- 黑马程序员—Java之面向对象
- 黑马程序员--谈谈java中的面向对象
- 黑马程序员——java基础知识之网络编程(一)
- 01背包
- C++中的临时对象用法总结
- 线程池总结[JDK1.6实现]
- c++类的STL使用注意事项
- 黑马程序员——java中的面向对象简介
- 编写自动查找AP上下线日志经验(1)
- C++ set容器元素的插入与遍历
- PHP内核的学习--创建PHP扩展
- 告别欧氏距离:聚类中的距离学习方法
- hdoj 2527 Safe Or Unsafe(哈弗曼算法)
- BZOJ2369【Tree DP】
- 【C语言】将函数reverse_string(char * string)参数字符串中的字符反向排列。
- 如何改善Java中锁的性能