当前位置: 首页 > 面试题库 >

在C#中创建匿名对象的Java等效于什么?

夏飞鹏
2023-03-14
问题内容

在C#中,您可以执行以下操作:

var objResult = new { success = result };

是否有与此等效的Java?


问题答案:

Java没有通过var关键字向C#提供类型推断,因此尽管您可以创建匿名类型,但由于无法获取其属性,它们的效果不是很好。

因此,您可以像这样创建一个匿名类的实例:

Object myobj = new Object() {
  public final boolean success = true;
}

但是由于myobjObject您无法success在代码中访问的实例,并且已经创建了 匿名 类的实例,因此根据定义,没有办法显式引用该类。

在C#中,var可以通过推断类型来解决此问题,但是在Java中无法做到这一点。

通常,匿名类用于创建接口和抽象类的实现,因此使用接口或父类作为类型进行引用。



 类似资料:
  • 问题内容: 我最近开始使用C#,并且我想找到与此等效的方法。我不知道这叫什么,所以我将简单地通过代码向您展示。 使用Java,我能够创建如下接口: 并像下面这样在方法的参数中传递此接口: 编辑 :我的问题是关于类中的方法的,如果使用C#可以执行这样的操作。 我想知道是否有一种方法可以使用C#(在方法中实例化接口)执行类似的操作,以及这实际上是什么。谢谢! 问题答案: 哇…好吧,请允许我概括一下:

  • 问题内容: 众所周知,使用JavaScript创建匿名对象很容易,就像下面的代码一样: 输出: 可以在PHP中应用相同的技术吗?我们可以在PHP中创建匿名对象吗? 问题答案: 已经有好几年了,但是我认为我需要保持最新信息! 从PHP 7开始,可以创建匿名类,因此您可以执行以下操作: 您可以在手册中详细了解 但是我不知道它的实现与JavaScript有多么相似,因此JavaScript和PHP中的匿

  • 问题内容: 在C#中,您可以匿名定义委托(即使它们不过是语法糖)。例如,我可以这样做: 是否可以在Java中传递这样的代码?我正在使用处理框架,该框架具有Java的较旧版本(它没有泛型)。 问题答案: Java 8之前的版本: 最接近委托的Java是单方法接口。您可以使用匿名内部类。 Java 8及更高版本: Java 8 在该语言中添加了lambda表达式。

  • 经过前面的学习,我们知道创建对象的标准格式如下: 类名称 对象名 = new 类名称(); 每次 new 都相当于开辟了一个新的对象,并开辟了一个新的物理内存空间。如果一个对象只需要使用唯一的一次,就可以使用匿名对象,匿名对象还可以作为实际参数传递。 匿名对象就是没有明确的给出名字的对象,是对象的一种简写形式。一般匿名对象只使用一次,而且匿名对象只在堆内存中开辟空间,而不存在栈内存的引用。 程序运

  • 问题内容: 我想将Java中的类转换为C#,大部分更改已经完成,但是我不确定这部分。我想转换以下代码行: 我已经试过了: 但是它不能正常工作,因为GetBytes()期望翻倍。我不确定将其转换为双精度是否可以解决问题,所以我想在这里询问。 问题答案: 根据您的编码,您可以执行以下操作: 有关参考,请参见http://msdn.microsoft.com/zh- cn/library/ds4kkd5

  • 问题内容: 我有使用的Java代码。在我的移植代码中,我有= 。我需要一种在C#中复制/模仿tailMap的方法。 我已经想到了以下内容: 这将返回,而我需要返回。我可以从中创建一个,但是我觉得应该已经有一种更好的,更优雅的方法来做到这一点。 另一个想法是做类似的事情 那应该起作用,我不确定在建立列表时按排序顺序添加值将如何影响插入的时间。 还有其他想法吗? Java SortedMap C#So