图像类和位图类型的构造函数

本文关键字:构造函数 类型 位图 图像 | 更新日期: 2023-09-27 17:49:32

好吧,我不明白它是怎么来的,图像类有位图类型的构造函数?我的意思是,我可以做:

Image sprite=new Bitmap(...)

为什么?这是因为位图是从图像派生的吗?

图像类和位图类型的构造函数

是的,因为Image是抽象的,而扩展ImageBitmap不是抽象的。您也可以简单地让代码这样做:

Bitmap sprite = new Bitmap();

Image之所以抽象,是因为它也可以表示非基于像素的图像。

为什么?这是因为位图是从图像派生的吗?

嗯,是的,这就是MSDN所说的(假设名称空间为System.Drawing):

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class Bitmap : Image

但是并不是Image类有Bitmap()构造函数。由于Bitmap继承自Image,所以Bitmap的所有实例也是Image的实例。