在Java中是否可以将类存储在变量中?
我试着做一些类似的事情:在Java中是否可以将类存储在变量中?,java,class,processing,Java,Class,Processing,我试着做一些类似的事情: class test { Class c; c[] array = new array[0]; test(Class c_) { c = c_; } } 这样它就可以被普遍使用,并且我在类测试中放入的任何类都可以工作。我已经试过这个东西了,但似乎不起作用。这有可能吗?如果这意味着什么的话,我也在使用IDE处理。 类是创建对象的蓝图 它在记忆中没有物理存在 其实例具有可存储的存在性 所以,若类在内存中不存在,它就不能保存在内存中 变数 是和否。是
class test {
Class c;
c[] array = new array[0];
test(Class c_) {
c = c_;
}
}
这样它就可以被普遍使用,并且我在类测试中放入的任何类都可以工作。我已经试过这个东西了,但似乎不起作用。这有可能吗?如果这意味着什么的话,我也在使用IDE处理。- 类是创建对象的蓝图
- 它在记忆中没有物理存在
- 其实例具有可存储的存在性
- 所以,若类在内存中不存在,它就不能保存在内存中 变数
class Test<T> {
private T[] array;
@SuppressWarnings("unchecked")
Test(Class<T> c, int len) {
array = (T[]) Array.newInstance(c, len);
}
public void set(int p, T v) {
array[p] = v;
}
public T[] getArray() {
return array;
}
}
“如果这意味着什么的话,我也在使用IDE处理。”--不,你错了,因为处理是一个IDE,以及一个构建在Java之上的完整编程语言。@HovercraftFullOfEels好的,谢谢,我对这些东西不太了解抱歉。
public static void main(String[] args) {
int size = 5;
Test<String> t = new Test<>(String.class, size);
for (int i = 0; i < size; i++) {
t.set(i, String.valueOf(i));
}
System.out.println(Arrays.toString(t.getArray()));
}
[0, 1, 2, 3, 4]