黑马程序员技术交流社区

标题: 面向对象的学习 [打印本页]

作者: forjunjian    时间: 2015-8-27 23:06
标题: 面向对象的学习
面向对象面向对象的概念

1 面向过程:强调的是功能行为
面向对象:将功能封装进对象,强调了功能的对象
2.面向对象的设计
开放过程:创建对象,使用对象,只会对象
设计过程:管理和维护对象之间的关系
面向对象的特征:封装、继承、多态

类与对象

类是具体事物的抽象和定义
对象是实在存在的实体
类包含属性、行为,定义类就是对这两个元素的描述。
成员变量和局部变量的区别
成员变量:
1》定义在类中,整个类可以对其访问
2》随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中
3》有默认的初始化值
局部变量:
1》局部变量只定义在局部范围(函数,语句)内,只在所属的区域有效。
2》存在于栈内存中,作用范围结束,变量空间会自动释放
3》没有默认初始化值

对象的内存结构

对象实体存在于堆内存中,当没有引用变量对应引用,就会被垃圾回收器回收,由垃圾回收期管理。
引用对象存在于栈内存中。

封装

定义:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
1》将变化隔离
2》便于使用
3》提高重用性
4》提高安全性
封装原则:
1》将不需要对外提供的内容都隐藏起来
2》把属性都隐藏,提供公共方法对其访问

构造函数

给对象进行初始化
特点:
1》函数名和类名相同
2》不用定义返回值类型
3》没有具体的返回值。
对比一般函数:
构造函数:对象创建时调用,只调用一次
一般函数:对象创建后调用,可调用多次
注意:通过this在构造函数中调用其它构造函数,只能定义在构造函数第一行,因为初始化动作要先执行。



作者: cc3441251    时间: 2015-8-27 23:25
谢谢楼主分享
作者: sunsteam    时间: 2015-8-27 23:54
假如面试官问  什么是对象  然后按照这个回答 对象是实在存在的实体  我觉得肯定挂了
作者: 追梦天涯33    时间: 2015-8-27 23:59
那你觉得该怎么回答!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2