1:构造函数不能为虚函数
1):虚函数是用父类指针引用子类对象用的,(父类)构造函数在被调用的时候,子类对象还没被创建,不能用虚函数2):虚函数是通过vtable来调用的,vtable存在于对象的存储空间中,构造函数被调用的时候,对象还未生成,空间未分配,
因此构造函数不能为虚函数2:析构函...
分类:
其他好文 时间:
2014-05-10 01:18:38
阅读次数:
294
反射 避免硬编码类对象 (存储了类的信息的对象 类加载的产物)Class类名.class
直接获得类对象 (简单类型的类对象 int.class)类的对象.getClass()Class.forName("类名")
通过类名主动加载一个类并获得类对象类对象.newInstance() ...
分类:
编程语言 时间:
2014-05-08 22:07:16
阅读次数:
263
面向对象的多态是建立在继承上,可以说没有继承就没有多态;多态:父类指针指向了子类的对象;1
int main()2 {3 //假设已定义了Animal类和它的子类Dog,那么多态的代码体现就是4 Animal *a = [Dog
d];//父类指针指向了子类对象5 ...
分类:
其他好文 时间:
2014-05-07 09:05:03
阅读次数:
237
今天学习了C++语言的内存动态分配,并借助所学的知识实现了一个动态内存分配类。
问题的背景为:在已经实现了一个点类的基础上,实现一个动态内存分配类,这个类 的功能为:实现根据输入的数目size,动态的生成size个点类对象;并在提供一个借口
可以对pos位置的对象进行操作;在对象生存期结束时,可以自...
分类:
其他好文 时间:
2014-05-06 01:05:28
阅读次数:
288
1 基类指针指向基类对象(正常使用)
2 派生类指针指向派生类对象(函数名相同,不管是不是虚函数,调用的都是派生类的函数)
3 基类指针指向派生类对象(函数名相同,虚函数的话调用的是派生类的,非虚函数的话调用的是基类的)
4 派生类指针指向基类对象(一般不要这么用)
参考资料:
http://blog.csdn.net/monkeyduck/article/details/155...
分类:
其他好文 时间:
2014-05-05 13:15:52
阅读次数:
273
虚函数使用的时机为什么虚函数不总是适用? 1. 虚函数有事会带来很大的消耗; 2.
虚函数不总是提供所需的行为; 3. 当我们不考虑继承当前类时,不必使用虚函数。必须使用虚函数的情况: 1.
当你想删除一个表面上指向基类对象,实际却是指向派生类对象的指针,就需要虚析构函数。
分类:
编程语言 时间:
2014-05-05 09:36:24
阅读次数:
487
C++ Primer Plus学习笔记之继承类的初始化顺序
基类的构造函数,析构函数和操作符函数operator=是不能被派生类继承的;
那么,当创建一个派生类对象时,怎样调用基类的构造函数对基类的数据进行初始化呢???
答案是:构造函数执行时遵行先兄长(基类),再客人(对象成员),后自己(派生类)的顺序;
另一方面,执行析构函数时,先执行派生类的析构函数,再执行基类的析构函数。原因是,对...
分类:
编程语言 时间:
2014-05-04 09:41:27
阅读次数:
373
在uml中大部分模型描述了逻辑和设计方面的信息:
用例图知道期望
类图可以知道问题域的词汇(类、对象)
状体图、交互图和活动图可以知道类图中的词汇是如何写作完成行为的(逻辑结构)
实现图是用来描述实现方面的信息
它从系统的层次来描述:硬件的组成和布局;软件系统划分和功能实现。这两个方面分别是通过部署图和组件图来实现的:
构件图:用来显示一组构件之间的组织与依赖关系。主要...
分类:
其他好文 时间:
2014-05-04 09:01:53
阅读次数:
287
复制控制--析构函数引言: 在构造函数中分配了资源之后,需要一个对应操作自动回收或释放资源。析构函数就是这样的一个特殊函数,它可以完成所需的资源回收,作为类构造函数的补充。1、何时调用析构函数 撤销类对象时会自动调用析构函数: Sales_item *p = new Sales_item;
{
Sales_item item(*p); //调用复制构造...
分类:
编程语言 时间:
2014-05-03 21:09:42
阅读次数:
281
1.字节码。所谓的字节码就是当java虚拟机加载某个类的对象时,首先需要将硬盘中该类的源代码编译成class文件的二进制代码(字节码),然后将class文件的字节码加载到内存中,之后再创建该类的对象
2.java反射的基础是Class类(注意不是小写的class),Class类实例代表着内存中的一份字节码。常见的获取Class类对象的方法如下(第一种为对象的方法,第二种为类的方法):...
分类:
编程语言 时间:
2014-05-03 21:05:46
阅读次数:
323