gpt4 book ai didi

java - 如何在java中创建子类的对象?

转载 作者:行者123 更新时间:2023-12-03 22:15:08 26 4
gpt4 key购买 nike

我正在尝试创建一个子类的对象,该对象在主类中不是静态的,但无法做到。有没有人试过同样的?

package com.example;

import com.example.SubClassExample.MainClass.SubClass;

public class SubClassExample {

static class MainClass {
public int mca;
protected int mcb;
private int mcc;

SubClass sc = new SubClass();

public class SubClass {
public int sca;
protected int scb;
private int scc;

void method() {
mca = 10;
mcb = 20;
mcc = 30;

sca = 10;
scb = 20;
scc = 30;

System.out.println("Subclass: " + mca + " " + mcb + " " + mcc + " ");
System.out.println("Subclass: " + sca + " " + scb + " " + scc + " ");
}

}

void method() {
mca = 100;
mcb = 200;
mcc = 300;

sc.sca = 100;
sc.scb = 200;
sc.scc = 300;

System.out.println("MainClass: " + mca + " " + mcb + " " + mcc + " ");
System.out.println("MainClass: " + sc.sca + " " + sc.scb + " " + sc.scc + " ");
}
}

public static void main(String[] args) {

MainClass obj = new MainClass();
obj.method();
obj.sc.method();

SubClass obj1 = new obj.SubClass(); //Getting ERROR here, tried so many like
//MainClass.clas.SubClass, obj.class.SubClass, Subclass() but still not able
//to do. As it is a public subclass, cant we able to create an object of
//that class
obj1.method();
}

}

最佳答案

Subclass instance = new MainClass().new SubClass();

或者在你的情况下
Subclass instance = obj.new SubClass();

您需要父类的实例来创建内部非静态类的实例。

关于java - 如何在java中创建子类的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20236242/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com