我是java新手,还有很多东西需要学习。我有嵌入式 C 编程经验,但对面向对象编程完全陌生。
我需要理解以下内容。 当您在 Java 中创建一个类时,它就是您要创建的对象的蓝图。假设我有一个带有按钮的 GUI,在我单击“创建新自行车”按钮后,可以创建一辆新自行车,您可以在 GUI 等中输入它要求的所有实例变量。
然后,当您完成点击完成按钮时,就会创建一个对象。 使用您在 GUI 中提供的所有数据来适应蓝图。
所以在你的 Action 监听器中,当按下完整按钮时,有一段代码,例如 自行车自行车 = new Bicycle(); 应该运行。但自行车是静态的,你永远不知道会有多少自行车条目。那么如何才能使引用变量动态化或者表现得像其动态一样呢?
抱歉,让我尝试用以下内容来解决它。
public void actionPerformed(ActionEvent e) {
Bicycle bike = new Bicycle();
}
这是按下 Jbutton 时执行的操作。这将创建一个名为“bike”的对象。但是,当再次按下按钮时会发生什么?它会覆盖之前名为 bike 的对象吗?
而且你不知道用户按下按钮会创建多少个自行车类型的对象。所以我想知道是否可以按以下方式使用数组之类的东西
String bike[] = {"bike1","bike2,"bike3"};
for(int i=0;i<3;i++){
Bicycle bike[i] = new Bicycle();
}
或者使用“数组列表”,因为最终您不知道将创建多少个对象?
最佳答案
So how can the reference variable be made dynamic or act like its dynamic?
这是默认情况下引用的行为方式。它们没有什么静态的。即使您使用静态字段,它也不是 C 能够理解的静态字段。它在类加载之前不存在,如果类加载在不同的类加载器中,它可以多次存在。如果卸载类加载器,它甚至可能消失。
如果您的字段不是静态
,则它会更加动态,特别是如果它是局部变量。
关于java - JAVA动态类引用变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28048328/