导航:首页 > 创造发明 > 派生类可以创造新的派生类

派生类可以创造新的派生类

发布时间:2021-08-16 23:51:00

1. 什么是派生类及派生类的用法

派生类就是从一个类衍生出的类
我们把这个派生类叫做子类,另一个类叫做父类
这个子类继承了父类的属性和方法
通俗讲就像是儿子继承了父亲的财产

子类可以扩展,添加新的方法还有属性
就像儿子从父亲那学到了一些技能
然后自己又学习了一些新的技能

子类的用法跟其他的类没有太大的区别

2. 1,当从现存类中派生出新类时,可以对派生类做哪些变化

b.i;应该是访问到B类的i字段
b.f(3.5); 应该访问到A类的f方法

3. 创建派生类的语法

Visual Basic 编程指南
如何:创建派生类
Inherits 语句导致类继承指定类的所有非私有成员。

从另一个类继承
添加一条 Inherits 语句作为派生类中的第一条语句,该语句具有与要用作基类的类相同的名称。Inherits 语句必须是类语句后的第一个非注释语句。

示例
下面的示例定义两个类。第一个类是具有两个方法的基类。第二个类从基类中继承这两个方法,重写第二个方法,并定义一个名为 Field 的字段。

Visual Basic
Class Class1
Sub Method1()
MsgBox("This is a method in the base class.")
End Sub
Overridable Sub Method2()
MsgBox("This is another method in the base class.")
End Sub
End Class

Class Class2
Inherits Class1
Public Field2 As Integer
Overrides Sub Method2()
MsgBox("This is a method in a derived class.")
End Sub
End Class

Protected Sub TestInheritance()
Dim C1 As New Class1
Dim C2 As New Class2
C1.Method1() ' Calls a method in the base class.
C1.Method2() ' Calls another method from the base class.
C2.Method1() ' Calls an inherited method from the base class.
C2.Method2() ' Calls a method from the derived class.
End Sub

当运行过程 TestInheritance 后,看到下面的消息:

This is a method in the base class.

This is another method in the base class.

This is a method in the base class.

This is a method in a derived class.

4. 派生类创建一个对象会不会产生一个基类对象,这个概念对吗

构造函数中讨论this没有意义,因为对象还没有构造完成,引用它只是起一个标记的作用,说明这是一个成员变量或成员函数。

5. MFC中创建派生类

直接输入代码也行啊
class XXX :public CMyThread
{

}

6. 在公有继承下 为什么派生类可以代替基类对象来使用

所有的继承方式的访问性:继承方式基类成员特性派生类成员特性派生类对象访问公有继承publicpublic可直接访问protectedprotected不可直接访问private不可访问不可直接访问私有继承publicprivate不可直接访问protectedprivate不可直接访问private不可访问不可直接访问保护继承publicprotected不可直接访问protectedprotected不可直接访问private不可访问不可直接访问

7. 派生类对象的创建过程中基类部分是如何进行初始化 详细�0�3

1 : 由于派生类对象中的基类对象部分是在派生类对象创建时首先被构造的,因此基类对象的数据成员的创建和初始化是先于派生类新增属性的创建和初始化的。如果基类对象的构造需要传递参数对它的数据成员进行初始化,则需要在派生类构造函数定义的初始化表中调用基类的构造函数,并将由派生类构造函数的参数表传递来的相应的参数作为实参传递给被调用的基类构造函数,用于对基类对象的初始化。例如: class point { int x, y; public: point(int x, int y); // … }; class circle public point { int radius; public: circle(int x, int y, int radius); // … } … circle::circle(int x, int y, int radius):point(x, y) { this->radius = radius; } 2 : 在C++中,类的派生有三种方式: (private)派生、 (protected)派生和公有 (public)派生。这三种派生方式对基类中具有各种访问权限的成员的继承情况如下: ① :在三种派生方式定义的派生类中都不能被直接访问,当然也不能被派 生类对象的使用者从类外直接访问。 ② :分为两种情况: · (private)派生方式定义的派生类中基类的保护成员在派生类中被变为私有成员, 因此这些成员能够被派生类成员直接访问,而不能被派生类对象的使用者从类外直接 访问; · (protected)派生方式和 (public)派生方式定义的派生类中基类的保护成员在 派生类中仍然保持为保护成员,因此这些成员能够被派生类成员和派生类的派生类成 员直接访问,而不能被派生类对象的使用者从类外直接访问。 ③ :分为三种情况: · (private)派生方式定义的派生类中基类的公有成员在派生类中被变为私有成员, 因此这些成员能够被派生类成员直接访问,而不能被派生类对象的使用者从类外直接 访问; · (protected)派生方式定义的派生类中基类的公有成员在派生类中被变为保护成 员,因此这些成员能够被派生类成员和派生类的派生类成员直接访问,而不能被派生 类对象的使用者从类外直接访问; · (public)派生方式定义的派生类中基类的公有成员在派生类中仍然保持为公有成 员,因此这些成员不但能够被派生类的成员直接访问,而且也能被派生类对象的使用 者从类外直接访问。 3 : 以任何派生方式定义派生类都不能直接访问基类的私有成员。如果要实现派生类能直接访问基类的私有成员,可以通过以下两种方法实现: ① 将基类的私有成员声明保护成员。 ② 将派生类声明为基类的友元类。 4 : 保护段成员允许类内直接访问,但不能被类对象的使用者从类外直接访问;而公有段成员不仅允许类内直接访问,而且也允许类对象的使用者从类外直接访问。 保护段成员在派生类的继承情况分为两种:在 (private)派生方式定义的派生类中基类的保护成员成为派生类的私有成员;在 (protected)派生方式和 (public)派生方式定义的派生类中基类的保护成员仍然是派生类的保护成员。 5 : 在多继承派生中,如果派生类的多个直接基类是从一个间接基类中直接派生的(会在多继承派生类对象中存在一个以上的间接基类对象),并且在多继承派生类中需要访问该间接基类的成员,则会产生访问的歧义性。解决这一问题,就必须引入虚基类,从而多继承派生类的直接基类从间接基类派生时,可以将该间接基类声明为虚基类,使得在多继承派生类对象中只有一个间接基类对象,避免了上述的访问歧义性。 虚基类中一般应该有一个不需要传递参数的构造函数。否则就必须在多继承派生类构造函数的初始化表中显式调用作为虚基类的间接基类的构造函数。 6 :⑴ 若同一派生层次中同时包含虚基类和非虚基类,应先调用虚基类构造函数,再调用非虚 基类的构造函数,即“ "; ⑵ 若同一派生层次中包含多个虚基类,这些虚基类的构造函数将按照派生类定义中对它们 声明的先后次序,从左至右调用。 ⑶ 若虚基类是非虚基类的派生,则仍然先调用该虚基类的基类构造函数,再调用派生虚基 类的构造函数。

8. 派生类能否再生成新的派生类谢谢了,大神帮忙啊

派生类
继承
基类
有3种public(公有继承),
protected
(保护继承)和private(私有继承)所以可以这样写:public
class
B
:
public
A
protected

private一样。还有B
b
=
new
B();
是java中创建派生类的方法。如果是C++的话,应当是这样的:B
b(参数);
查看原帖>>
求采纳

阅读全文

与派生类可以创造新的派生类相关的资料

热点内容
马鞍山二中叶张平 浏览:214
机动车交通事故责任纠纷被告代理词 浏览:603
医院固定资产折旧年限 浏览:702
商标注册网先咨政岳知识产权放心 浏览:658
公众号版权投诉材料 浏览:841
签订无固定期限合同的好处 浏览:727
油汀发明 浏览:216
论文转让网 浏览:282
通州门面转让最新消息 浏览:165
第二届紫金知识产权国际峰会 浏览:4
2010年4月自考知识产权法答案 浏览:259
3系马年限量版价格 浏览:952
快餐店转让协议 浏览:407
小萝莉和猴神大叔版权 浏览:290
产权年限到期后怎么办 浏览:83
铜川58同城转让 浏览:477
著作权使用许可范本 浏览:846
第三次工业革命的成果 浏览:414
火石创造笔试题 浏览:545
河南医院转让 浏览:798