Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何创建与给定对象属于同一类的对象_Java_Oop_Reflection - Fatal编程技术网

Java 如何创建与给定对象属于同一类的对象

Java 如何创建与给定对象属于同一类的对象,java,oop,reflection,Java,Oop,Reflection,在Ruby中,我可以执行以下操作: object2 = object1.class.new 我可以用Java做同样的事情吗?这种模式称为反射吗?您可以使用反射 Object object2 = object1.getClass().newInstance(); 如果您知道object1的类型,您可以这样做 MyType object1 = ... MyType object2 = (MyType) object1.getClass().newInstance(); 但是如何命名类型呢?使用

在Ruby中,我可以执行以下操作:

object2 = object1.class.new
我可以用Java做同样的事情吗?这种模式称为反射吗?

您可以使用反射

Object object2 = object1.getClass().newInstance();
如果您知道object1的类型,您可以这样做

MyType object1 = ...
MyType object2 = (MyType) object1.getClass().newInstance();

但是如何命名类型呢?使用
Object
?@yozloy该对象没有名称,它的类型可以与object1的类型相同(如果愿意)。(您必须说明它是哪个)对象引用的名称是
object2
问题是转换类型
MyType
由object1确定,它不应该是动态的think@yozloy在这种情况下,您不知道确切的类型,它只是一个对象。