2016-08-25 12 views
-1

このコードのどこかにエラーがあり、修正方法がわかりません。日食では変数が初期化されていないと言いますが、nullでオブジェクトを初期化します。私はこれを行うと、c.courseCodeだけがnullで初期化できると言います。私を助けてください!このコードにエラーがあり、修正できません

class Course { 
String courseCode; 
String courseName; 
int duration; 
} 

public class CourseTest { 
public static void main(){ 
    Course c; 
    c.courseCode = "C0001"; 
    c.courseName = "Programming in Java"; 
    c.duration = 4; 
    System.out.println("Course Code + " + c.courseCode); 
    System.out.println("Course Name + " + c.courseName); 
    System.out.println("Course Duration in Months: " + c.duration); 
} 
} 

答えて

0
public class CourseTest { 
public static void main(){ 
    Course c = new Course(); <----- object is not instantiated in your code 
    c.courseCode = "C0001"; 
    c.courseName = "Programming in Java"; 
    c.duration = 4; 
    System.out.println("Course Code + " + c.courseCode); 
    System.out.println("Course Name + " + c.courseName); 
    System.out.println("Course Duration in Months: " + c.duration); 
} 
} 

値を保持するために作成されなければならないオブジェクトをインスタンス化しないコード。

+1

は初期化されていませんが、インスタンス化は大きな違いです。 – adhg

+0

あなたは正しいです.....今修正されました – Rishi

2
Course c = new Course(); 

オブジェクトを作成するとき、あなたは したがって、クラスを「インスタンス化」、クラスの「インスタンス」を作成しています。新しい演算子は、コンストラクタへの呼び出しである単一の後置引数である を必要とします。コンストラクタの名前 は、インスタンス化するクラスの名前を提供します。あなたはそれ

  • mainメソッドを使用するためにnewCourseオブジェクトを作成する必要があり

  • reference

    0
    1. 入力

    String[] argsを受けなければならないので、これらは2ですあなたが変更する必要がある行:

    public static void main(String[] args){ 
    Course c = new Course(); 
    
    関連する問題