为什么android Bitmap类不使用new关键字?

时间:2014-03-05 22:22:13

标签: java android bitmap

正如标题所说,为什么它不使用new关键字?为什么我们必须以静态方式创建任何新的位图?

1 个答案:

答案 0 :(得分:3)

这是一个设计选择。设计人员认为允许使用众多(静态)factory methods之一创建新的Bitmap实例是不明智的。

一个优点是它允许工厂方法 - 如果合适 - 在多个调用中返回相同的实例。请注意,返回的某些位图保证为immutable,因此可以安全地重复使用(这可以避免浪费具有重复图像数据的内存)。

使用Bitmap.createBitmap工厂方法重载之一来获取(可能但不保证是新的)Bitmap对象。

不允许使用new Bitmap()因为Bitmap构造函数是private,所以只有工厂方法可以直接访问它。