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

在类的构造函数中找出实例化对象

党航
2023-03-14
问题内容

如何从Java的构造函数中获取实例化对象?

我想为某些GUI类存储对父对象的引用,以模拟事件冒泡-调用父处理程序-但我不想更改所有现有代码。


问题答案:

简短的回答:Java没有办法做到这一点。(您可以找到哪个班级叫您,但以下较长的答案在大多数情况下也适用于您。)

长话大说:依赖于被调用的地方,魔术地表现不同的代码几乎总是一个坏主意。这会使必须维护您代码的人感到困惑,并且严重损害了您的重构能力。例如,假设您认识到实例化对象的两个位置基本上具有相同的逻辑,因此您决定排除公共位。惊喜!现在,代码的行为有所不同,因为它是从其他地方实例化的。只需添加参数并修复调用方即可。从长远来看,它将节省您的时间。



 类似资料:
  • 我正在从事一个C语言的项目,当我显式实例化模板类时,很难理解模板类的哪些成员被显式实例化。我编写了以下文件,然后使用Visual C 2008 Express Edition的发布配置编译该文件,然后将其放入反汇编程序。 忽略这个文件目前并不真正需要模板,这可以很好地编译。我将exe放入反汇编程序,它告诉我该测试 这导致测试

  • 生成类对象时,其成员可以用类的构造函数初始化。构造函数是与类同名的成员函数。程序员提供的构造函数在每次生成类对象(实例化)时自动调用。构造函数可以重载.提供初始化类对象的不同方法。数据成员应在类的构造函数中初始化或在生成对象之后设置其数值。 常见编程错误 6.7 类的数据成员只能在类定义中初始化。 常见编程错误 6.8 试图声明构造函数的返回类型和返回植是个语法错误。 编程技巧 6.5 适当时候(

  • 问题内容: 我想使用接受单个参数的构造函数从其对象实例化一个对象。 这是一些符合我想要的代码: 但是,它实例化没有文本的对象。我想使用接受字符串作为初始文本的构造函数。有没有一种方法可以从对象中选择特定的构造函数? 问题答案: 调用no- arg构造函数(不带任何参数的构造函数)。为了调用其他构造函数,您需要使用反射包()。 获取一个这样的实例: 的调用指定您要使用单个参数的构造函数。现在创建一个

  • 问题内容: 在React / React-Native中使用ES6 +语法,当 在构造函数外部 定义变量时,通过调用将其转换为实例变量。我的主张正确吗?如果在构造函数中未实例化,为什么它甚至还能工作?这里是相应的React Native代码片段: 关于ES7属性初始化器的讨论显示了如何在React / React Native中以这种方式显着使用变量。 到目前为止,相关的堆栈溢出讨论我通读不能回答

  • 问题内容: 我通过()存储了一个类列表,想实例化一个吗?这可能吗? 在我追求的方法看来,但它不支持构造函数? 问题答案: 您不能以这种方式构造新的类。 如果您具有类的名称,则可以使用Class.forName(className)加载/引用一个类。 如果您有要创建的类的字节码,则可以让类加载器加载字节码并为您提供该类。这可能比您预期的要先进。

  • 问题内容: 尝试获取JSON请求并处理它时,出现以下错误: org.codehaus.jackson.map.JsonMappingException:未找到类型[简单类型,类com.myweb.ApplesDO]的合适构造函数:无法从JSON对象实例化(需要添加/启用类型信息吗?) 这是我要发送的JSON: 在Controller中,我具有以下方法签名: AllApplesDO是ApplesDO