我需要一些课程:分数,课程和差点。文件是“handicap.java”,因此主要类是“障碍”。
如果我尝试将Score类或Course类嵌套在“障碍”类中,我会在尝试实例化任一类的实例时收到此错误:
handicap.java:129: non-static variable this cannot be referenced from a static context
Score sc = new Score(score, course);
^
handicap.java:141: put(java.util.GregorianCalendar,Score) in java.util.Map<java.util.GregorianCalendar,Score> cannot be applied to (java.util.GregorianCalendar,handicap.Score)
g.scores.put(greg, sc);
如果我在Score类声明中添加“static”,我仍然会收到第二个错误。帮助
答案 0 :(得分:1)
看看这个
public class Handicap {
public class Score{
}
public static class ScoreStatic{
}
public static void main(String[] args) {
Handicap h = new Handicap();
h.method();
new Handicap.ScoreStatic();
}
public void method(){
new Handicap.Score();
}
}
答案 1 :(得分:0)
从它看起来,你得到编译错误。
请阅读有关嵌套类:http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html
这是它的工作方式:
public class handicap{
public static void main(String... args) {
handicap st = new handicap();
handicap.Score fl = st.new Score();
}
class Score{
//blah
}
}