从理论上说,面向对象技术拥有四大基本特性:封装、抽象、继承、多态。一、封装 这是一种隐藏的特性。可以用一个公式来展示类的封装特性: 封装的类=数据 + 对此数据进行的操作(即算法) 通俗的说,封装就是:包起外界不必要知道的东西,只向外界展露可供展示的东西。 在面向对象理论中,封装这个概念...
分类:
其他好文 时间:
2015-02-24 12:31:13
阅读次数:
135
面向对象的四大基本特性面向对象的核心概念就是封装、抽象、继承、多态这四大基本特性,在这里先解释一下它们的定义:封装:是一种隐藏信息的特性。找到变化并且把它封装起来,你就可以在不影响其它部分的情况下修改或扩展被封装的变化部分,这是所有设计模式的基础,就是封装变化,因此封装的作用,就解决了程序的可扩展性...
继承(上):
1. 提高了代码的重用性
2. 让类与类之间产生关系,有了这个关系,才有多态性
注意:千万不要为了获取其他功能,简化代码而继承:
必须是类与类之间有所属关系才可以继承,所属关系 is a。
在java语言中只能是单继承,不支持多继承。
...
分类:
其他好文 时间:
2015-02-21 09:43:11
阅读次数:
167
接触过面向对象的人都知道面向对象有三大特征,分别是封装、继承和多态。这三者分别指的是什么,为什么是这哥仨,使用他们有什么好处,我们来梳理一下。
封装
原则:隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
①将变化隔离。
②便于使用。
③提高重用性。...
分类:
其他好文 时间:
2015-02-20 17:28:54
阅读次数:
159
封装、继承、多态是面向对象的三大特征,继承是实现类重用的重要手段,但是继承会带来一个最大的坏处,那就是破坏封装。因此接下来介绍组合,组合是实现类重用的重要方式,能提供更好的封装性。
子类扩展父类的时候,可以从父类那里继承得到Field和方法,假设现在我们有足够的权限,那么子类就可以直接复用父类的Field和方法,但继承在带来高度复用的同时,也带来了一个严重的问题,继承严重的破坏了父类的封装性。在...
分类:
编程语言 时间:
2015-02-18 15:19:49
阅读次数:
309
封装、继承、多态是面向对象的三大特征,在Java中什么是多态?
Java引用变量有两种类型,分别是编译时类型和运行时类型。何为编译时类型,编译时类型就是由声明该变量时使用的类型决定,而运行时类型是由实际赋给该变量的对象决定
的,也就是说如果编译时类型和运行时类型不一致时,就可能出现上面提到的多态。
我们看下下面的程序:
class BaseClass {
publ...
分类:
编程语言 时间:
2015-02-17 23:35:39
阅读次数:
277
一天一段scala代码(八)
为了更好的驾驭spark,最近在学习scala语言特性,主要看《快学scala》,顺便把一些自己认为有用的代码记下来。
package examples
class Person8
{
var name:String=""
def this(name:String)
{...
分类:
其他好文 时间:
2015-02-15 18:09:22
阅读次数:
128
JavaScript是一门面向对象的语言。在JavaScript中有一句很经典的话,万物皆对象。既然是面向对象的,那就有面向对象的三大特征:封装、继承、多态。这里讲的是JavaScript的继承,其他两个容后再讲。JavaScript的继承和C++的继承不大一样,C++的继承是基于类的,而JavaS...
分类:
编程语言 时间:
2015-02-15 10:37:49
阅读次数:
238
到目前为止,面向对象已经是软件开发的主流。 面向对象技术拥有四大基本特性:封装、抽象、继承、多态 1)封装,是一种隐藏信息的特性,通俗的说就是:包起外界不必需要知道的东西,只展示外界需要知道的东西。方便类的算法的更新更换,以及降低对其他使用类的外部代码的影响。 封装的类=数据+对此数据所进行的操作(...
分类:
其他好文 时间:
2015-02-13 13:14:20
阅读次数:
169
??
模式:是在某种情境下,针对某问题的某种解决方案。
愿力与你同在:目标和约束
编程真理:CHANGE
OO基础:抽象 封装 继承 多态
设计原则:
1 封装变化。找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
2 针对接口编程,而不是针对实现编程。
3 多用组合,少用继承。
4 为了交互对象之间的松耦合设计而努力。
5 开放-关闭原则。类应...
分类:
其他好文 时间:
2015-02-12 12:32:22
阅读次数:
111