Java 访问类中存在的类 请考虑以下代码:
我有两个类:ClassA.java和ClassB.java中定义的ClassA和ClassB 初始场景: 在ClassA中,我有如下内容:Java 访问类中存在的类 请考虑以下代码:,java,javafx,Java,Javafx,我有两个类:ClassA.java和ClassB.java中定义的ClassA和ClassB 初始场景: 在ClassA中,我有如下内容: public class ClassA extends Task<Integer> { @Override protected Integer call() throws Exception { throw new UnsupportedOperationException("Not supporte
public class ClassA extends Task<Integer> {
@Override
protected Integer call() throws Exception {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
我希望oracle文档中的这段文字能够回答您的问题: InnerClass的实例只能存在于的实例中 OuterClass并可以直接访问its的方法和字段 封闭实例 要实例化内部类,必须首先实例化外部类 班级。然后,使用以下命令在外部对象中创建内部对象 语法: OuterClass.InnerClass innerObject=outerObject.new InnerClass() 比如说,,
QR[i].Class1测试=QR[i].new Class1() 谢谢。我应该如何定义像
QR[I]=newclassa(I)代码>对于Class1?如果我这样做,那么在Netbeans中我会得到一个错误:要么它要求我1)在包mypackage中创建类“Class1”,要么在包mypackage中创建类“Class1”。请给出建议。它认为它无法访问该类。原因可能是什么?而不是QR[i]=新的ClassA(i);您必须尝试QR[i]=new ClassA();然后以QR[i]的形式访问Class1。Class1 test=QR[i]。new Class1();“i”是否对应于类名中的数字?(即,对于i=1创建类1的实例,对于i=2创建类2的实例,依此类推)@Constantine不太可能。它只是与上面for循环中定义的i
相关。你认为我应该做那样的事吗?由你决定。我只是想了解你想要完成什么。如果不确定,那么很可能您不需要这样做。@Constantine实际上,我决定创建一个单独的类,而不是在一个类中定义所有的类。它成功了。但是对于100个连接,我必须定义100个类,这是很奇怪的。你认为我可以放弃定义100个类吗?当然,你能用Class1ClassN的实现更新你的问题吗?我很好奇在每堂课上“//我的逻辑”是什么样子的。
public ClassB implements Initializable {
public ClassA[] QR;
@Override
public void initialize(URL url, ResourceBundle rb) {
for(int i=0; i<1; i++) {
QR[i] = new ClassA(i);
// My other stuff here
}
}
}
public ClassA {
public class Class1 extends Task<Integer> {
@Override
protected Integer call() throws Exception {
// My logic here
}
}
public class Class2 extends Task<Integer> {
@Override
protected Integer call() throws Exception {
// My logic here
}
}
public class Class3 extends Task<Integer> {
@Override
protected Integer call() throws Exception {
// My logic here
}
}
public class Class4 extends Task<Integer> {
@Override
protected Integer call() throws Exception {
// My logic here
}
}
// and so on until Class10
}// END of ClassA
@Override
public void initialize(URL url, ResourceBundle rb)
{
for(int i=0; i<1; i++)
{
QR[i] = new ClassA(i);
// My other stuff here
}
}
`public Class1[] QR1`, then it throws error.