封装:它的意义在于防止代码被恶意篡改它提供了许多访问修饰符来保证封装:public 访问无限制protected 只能在本类和派生类中访问private 只能在本类中访问internal 只有同一个项目中的类可以访问继承:一个类继承另一个类,子类可以访问父类中的属性和方法,除非父类的访问权限不允许多...
分类:
其他好文 时间:
2015-04-17 20:13:16
阅读次数:
115
我觉得command命令模式的本质就是把触发者和接受者隔离开来,把一个函数能干的事情提升到类的级别 搞一个基类包含虚函数excute() 搞好多具体的接受者类C**command(),在具体接收类中去实现excute,和触发者invoke接触的是基类,利用多态性,真正干事儿的是具体的接受者类,这样隔离开来,无论加多少具体的接受者类 既有代码都不受影响 非常灵活
很多lin...
分类:
其他好文 时间:
2015-04-15 19:41:34
阅读次数:
146
C++中经常用到重载、覆盖和隐藏这三个概念,也经常容易搞混。所以,这篇博文来整理一下它们之间的异同。1. 重载——实现多态性
A.相同的范围(同一个类中)
B.函数的名字相同
C.参数类型不同(不能进行隐式类型转换)
D.Virtual关键字可有可无2. 覆盖(重写)——派生类函数覆盖基类函数
A.不同的范围(分别位于基类与派生类中)
B.函数名字相同
C.参数相同
D.基类函数必须...
分类:
编程语言 时间:
2015-04-12 21:06:11
阅读次数:
167
15.多态性多态就是父类定义的抽象方法,在子类对其进行实现之后,将子类赋值给父类,在父类中,通过调用抽象方法来来实现子类的具体功能。下路是与抽象方法类似的虚方法。namespaceConsoleApplication15{classProgram{publicstaticvoidfun(Playerp){p.Train();}staticvoidMain(..
多态性带来了一个问题,就是如何判断一个变量所实际引用的对象的类型 。 C++使用runtime-type information(RTTI),Java 使用 instanceof 操作符。instanceof 运算符用来判断一个变量所引用的对象的实际类型,注意是它引用的对象的类型,不是变量的类型。请...
分类:
编程语言 时间:
2015-04-11 08:52:15
阅读次数:
142
1,直接用基类指针引用基类对象
2,直接用派生类指针引用派生类对象
3,用基类指针引用一个派生类对象,由于派生类对象也是基类的对象,所以这种引用是安全的,
但是只能引用基类成员。若试图通过基类指针引用那些只在派生类中才有的成员,编译器会报告语法错误。(解决该问题的答案是虚函数和多态性)
4,用派生类指针引用基类的对象。这种引用方式会导致语法错误。派生类指针必须先强制转换为基类指针,这种方法...
分类:
编程语言 时间:
2015-04-10 18:08:57
阅读次数:
121
面向对象编程简称OOP编程,实际上是对现实世界事物的一种抽象的过程。它的核心是把对象的定义和实现进行区分,让定义部分对象所具有的结构,让实现部分根据定义部分定义的具体结构进行具体的实现。用于生产玩具的模具叫做类,通常设计类的过程也可以称为建模,当然这个模不是模..
分类:
数据库 时间:
2015-04-09 12:15:05
阅读次数:
1778
6.类的继承继承的本质就是代码重用。构造一个新类无需从头开始写,直接继承已有的类,在此基础上添加新的属性和方法。继承中包含这样的一个问题,子类和父类的互相转化问题。记住,子类可以赋值给父类,反之就不行了。可以这样理解,子类继承父类的全部,还在此基础上扩展了,..
1、为什么了解决什么
多态指同一个实体同时具有多种形式。它是面向对象程序设计(OOP)的一个重要特征。如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。C++中的多态性具体体现在运行和编译两个方面。运行时多态是动态多态,其具体引用的对象在运行时才能确定。编译时多态是静态多态,在编译时就可以确定对象使用的形式。(静态绑定和动态绑定)
多态:同一操作作用于...
分类:
编程语言 时间:
2015-04-07 23:30:32
阅读次数:
319
通过对面向对象的理解,面向对象有四大特点:抽象性、封装性、继承性和多态性。 而我们来了解的就是面向对象的最重要特征继承: 继承就是一种联结类的层次模型,并且继承允许和鼓励类的重用。使用继承可以很好的 表述共性的方法,也能更好的体现java中的重用。我们可以从一个已有的类当中扩...
分类:
其他好文 时间:
2015-04-05 10:22:58
阅读次数:
101