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更详细地解释了这一点。