Java-使其他类需要类

Java-使其他类需要类,java,Java,我有两门课,行星和月亮,我的计划是让月亮课要求行星课,所以我先创造行星,然后创造月亮,怎么做? 我的星球班: public class planet { //planet name private String namaPlanet; //total moon per planet private int jmlBulan; //revolution and rotation private double jmlRotasi, jmlRevolus

我有两门课,行星和月亮,我的计划是让月亮课要求行星课,所以我先创造行星,然后创造月亮,怎么做? 我的星球班:

public class planet {
    //planet name
    private String namaPlanet;
    //total moon per planet
    private int jmlBulan;
    //revolution and rotation
    private double jmlRotasi, jmlRevolusi;
public planet(String namaPlanet, int jmlBulan, double jmlJamPhari, double jmlHariPtahun) {
    this.namaPlanet = namaPlanet;
    this.jmlBulan = jmlBulan;
    this.jmlRotasi = jmlJamPhari;
    this.jmlRevolusi = jmlHariPtahun;
}

public planet(String namaPlanet, double jmlRotasi, double jmlRevolusi) {
    this.namaPlanet = namaPlanet;
    this.jmlRotasi = jmlRotasi;
    this.jmlRevolusi = jmlRevolusi;
}
}
月球级:

public class bulan extends planet {
private String namaBulan;
public bulan(String namaBulan, String namaPlanet,double jmlJamPhari, double jmlHariPtahun) {
    super(namaPlanet, jmlJamPhari, jmlHariPtahun);
    this.namaBulan = namaBulan;
}
}
因为月亮不是行星,所以你不应该从行星中获得你的月亮等级,而是给月亮一个行星的参考,或者让行星有一个月亮的列表

public class Moon {
    private String name;
    private Planet planet;

    public Moon(String name, Planet planet) {
         this.name = name;
         this.planet = planet;
    }
}

这还不清楚-这里的实际问题是什么?
Moon
扩展了
planet
,所以如果Moon被创建,plantet将被“创建”,担心继承OOP概念,可能会对你有所帮助。不相关的,我建议你们坚持使用,让人们更容易阅读你们的代码。更相关的是,通过让月球延伸到行星,你们表达了月球是一颗行星,而更准确的说法是一颗行星可以有零颗或更多的卫星。。。链接到的教程@Dharani更详细地解释了这一点。