黑马程序员技术交流社区
标题: 面向对象、封装、继承、多态(1) [打印本页]
作者: shi0000 时间: 2014-4-3 22:15
标题: 面向对象、封装、继承、多态(1)
面向对象、封装、继承、多态(1)
一、面向对象与面向过程:
面向过程:强调的是具体的功能实现(执行者)
面向对象:强调的是具备功能的对象。(管理者)
(一)构造方法:
用于构造类的实例。
特点:方法名与类名相同
不用定义返回值类型、
不需要return语句
多个构造方法使用重载的形式存在的
(二)static关键字
随着类的加载而加载,优先于对象存在,被所有对象所共享,可以直接被类名调用
Static修饰的字段和方法,既可以通过类调用,也可以使用实例调用,没static修饰的方法和字段只能使用类名调用,static不能与this,super同时连用。
(三)匿名对象
对方法和字段只能进行一次调用,可作为实际参数进行传递,只在堆中开辟存储区域
只能使用一次,使用完就被销毁了。
(四)this关键字
表示当前对象,在构造器中相互调用,但是此时的this必须卸载构造方法的第一行。
二、封装
封装机制在程序中的体现:对描述对象的状态用字段表示,描述对象的行为用方法表示,把字段,方法定义在一个类中,并保证外界不能任意更改其内部的字段值,也不予许任意调动起内部的功能方法。
访问修饰符:
修饰符 类内部 同一个包 子类 其他
Public √ √ √ √
Protected √ √ √
Default √ √
Private √
三.继承:
(一)优点:1、提高了代码的复用性
2、让类与类之间产生关系,有了继承关系才有了多态的特性
3、java语言中只支持单继承
4、支持多层继承,Object是每个类的超类
(二)子与父的关系;
子类不能直接访问父类中的私有成员,但可以调用父类中的非私有方法来访问父类的私有成员
在子类方法前加@override能编译成功,表明方法是覆写。
(三)super关键字与调用父类构造方法
本类中调用另一个重载构造方法用this(参数列表)
子类构造方法调用父类构造方法用super(参数列表)
Super必须放在第一句。
四、多态: 指同一个实体同时具有多种形式。
多态的实现:父类的引用变量指向子类的实例对象,而程序调用的方法在运行期才动态绑定。重载,覆写
多态的作用:
把不同子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异。写出通用的代码。
编译时多态:方法重载;
运行时多态:方法覆写;
作者: 许庭洲 时间: 2014-4-25 10:13
值得学习ing!
作者: 一无所知 时间: 2014-4-25 22:30
学习了,赞一个
作者: 黄黑马 时间: 2014-4-27 22:07
有用赞个!
作者: 张志成 时间: 2014-4-28 22:53
很有用啊,顶一个
作者: 赵京 时间: 2014-5-4 09:18
多谢分享
作者: 1007886543 时间: 2014-5-4 21:21
我现在正学在这里,呵呵
作者: 花园农场 时间: 2014-6-9 11:29
有用,值得学习!
作者: 马到成功2014 时间: 2014-6-10 08:50
学习了 赞一个
作者: 臭豆腐 时间: 2014-6-21 10:22
很好,学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |