这个我知道,
比如我要实例化a,b是它的基类,
那么在实例化A的时候,.net是会去实例化B的啊
比如我要实例化a,b是它的基类,
那么在实例化A的时候,.net是会去实例化B的啊
解决方案 »
- 救急,跪求一正则表达式,根据条件获取超链接的链接字符串。
- 按下数字键1怎么样响应botton_click事件
- C#中如何将结构体传入动态链接库中
- SqlConnection问题
- 高分求c#+SQL数据库制作的软件自动更新升级程序
- c# 通过API函数获取tooltip的内容
- 求C#读取文本文件的程序?
- AD访问报出"未知的身份验证机制"错误,希望大虾指教,在线等候!!
- 获取网页上的内容
- ◎◎◎◎请问一个软件的开发过程和步骤◎◎◎◎
- CS0433: 类型“Microsoft.Office.Core.MsoTriState”同时存在于“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Fil
- 套接字编程中反序列化的问题,对象无法转换
对于,子类的实例化,并不会作用于基类,因为子类的继承,已经把父类的所有属性和行为据为己有,如同copy.
比如我要实例化a,b是它的基类,
那么在实例化A的时候,.net是会去实例化B的啊
classA aa=new classA();
这样只实例化A并没实例化它的基类B啊~
但是B的东西可以被对象aa引用了~
{
public a()
{
Console.WriteLine("aaaaaa");
}
}
class b : a
{
public b()
{
Console.WriteLine("bbbbbb");
}
}
class Program
{
static void Main(string[] args)
{
b my = new b();
Console.ReadKey();
}
}这段代码的输出结果是
aaaaaa
bbbbbb证明基类的构造函数还是会被调用的啊
这里子类会自动运行基类的构造~但并没实例化啊~其实别的类也执行基类的构造,只不过像Object这样的类构造很可能为空~(具体我也没看过哈哈~)
只是实例化了子类b,那么它还不是一样正常调用了?这样,就和书上冲突了呵呵~什么破书啊?
偶给你推荐一本
《概念到代码》
韩磊 戴飞翻译的
《Bengin C# Object From Concepts to Code》
原话是:"要实现派生的类,必须实例化它的基类,要实例这个基类,必须实例这个基类的基类.这样一直实例到System.Object为止"这怎么说啊.
是不是翻译有问题?我语言能力有限,感觉像是绕口令~要按你的理解你自己做的例子根本实现不了~
首先```实例化一个子类对像时```它首先会默认调用基类的构造函数(当基类中没有定义构任何构造函数时),然后才调用本身的构造函数```` 就比如你写的这些代码``
class a
{
public a()
{
Console.WriteLine("aaaaaa");
}
}
class b : a
{
public b()
{
Console.WriteLine("bbbbbb");
}
}
class Program
{
static void Main(string[] args)
{
b my = new b();
Console.ReadKey();
}
} 而C#中有规定,抽像类不能够实例化,然后你就假设a是抽像类的话,当实例化b时,a不也就````````````` 楼主想说的应该是这个意思吧?!~之前我也没有注意到这些``听你这么一说似乎也觉得有些矛盾,认真想想``觉得应该是像14楼说的那样吧``调用跟实例是有区别的``不直接new抽象类就得````````这也是我自己的理解了``还是想听听高手的指点````` 继续关注中`````````