当没有类型的对象初始化时,它叫什么?

问题描述

我只遇到过几次,现在还不完全了解,但是我觉得有必要研究幕后实际发生的事情。

我认识到它正在创建一个对象的新实例,但是尚未指定类型。

var

当您将object换成dynamicpseudo-class时,它也起作用。但是,考虑到这一点,我无法真正找到它来进行研究。我相信它被称为pseudo-object [[ $1 =~ .*\d+.* ]] && echo "The name must not contain digits" && exit 1 echo "Oh no" ,但我找不到关于它的任何实际文档。

我已经对该主题here's the latest)进行了几次Google搜索,甚至审查了一些相关的SO帖子(here's one about initialization),但仍然找不到答案。


这实际上叫什么?

解决方法

它称为anonymous type,并直接实例化。

Instantiation of anonymous types

要创建anonymous type的实例,请使用新的运算符和对象初始化程序语法:

var example = new { Greeting = "Hello",Name = "World" };
Console.WriteLine($"{example.Greeting},{example.Name}!");
,

这称为Anonymous Type

从文档中

匿名类型提供了一种方便的方法,可以将一组只读属性封装到单个对象中,而不必先明确定义一个类型。类型名称由编译器生成,在源代码级别不可用。每个属性的类型都是由编译器推断的。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...