使用类类型定义创建普通对象

罗曼·霍米茨基

假设我们有以下类:

class A {
  private maxValue = 900;
  public minValue = 800;
  someMethod() {}
}

我想用类类型定义创建一个普通对象:

const objA: A = {
  minValue: 200,
  maxValue: 2313,
  someMethod() {}
};

我收到此错误:

属性 'maxValue' 在类型 'A' 中是私有的,但在类型 '{ minValue: number; 中不是私有的。最大值:数字;一些方法():无效;}

问题是:以这种方式创建对象有意义吗?还是我应该一直坚持new A()

亨德拉

不,这没有太大意义。如果您检查objA instanceof A它会返回false,尽管您的代码声明它将是类 A 的实例。正如您所看到的,普通对象不能具有私有属性,而类实例可以。所以最好坚持new A()或使用接口。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何创建用户定义的类型模板类对象C ++

如何使用AMD模块在普通js中创建打字稿类的对象实例

扩展类对象的类型定义

在使用类型创建类时如何定义__str__函数?

使用匿名类创建参数化类型对象

在类定义中创建对象

与普通类型的变量数创建一个类

如何使用具有定义大小的对象创建类

使用类型在python中动态创建类-为什么创建的类对象不相同?

我无法使用在普通JavaScript中创建的带有自定义函数的类进行切换

为什么在 Python 中从类创建对象时不必定义参数的类型?

使用类对象作为类型

在 C# 中不使用反射将对象转换为用户定义类型的类对象

创建与参数化类型相同的类的对象

创建类对象时出现类型错误

无法从 Maven 类型项目创建类的对象

工厂类创建未类型化的对象

创建自己的/自定义类对象

C ++-在类定义末尾创建的对象的范围

创建自定义对象类android

sequalize-使用泛型从普通对象创建模型

使用变量创建类对象

使用Configparser创建类的对象?

警告:getInitialState是在DimensionPicker(一个普通的JavaScript类)上定义的。仅使用React.createClass创建的类支持此功能

用子类的类型或其父类的类型创建子类对象

使用:paste定义类/同伴对象的火花壳“错误:类型不匹配”

当对象类型包括基元和自定义类时,避免使用ArrayList <object>?

'对象':'结构/类'类型使用头保护重新定义。怎么修?

覆盖File类toString,而不必创建覆盖类类型的对象