2012-03-18 10 views
1

私のプロジェクトでクラスがほとんどありません。メインクラスは私にSMSMain.Butする必要があります。プロジェクトを実行すると、メインクラスが見つかりませんerror.Iプロパティ(Netbeans)で設定しようとしましたが、 ?「tはany.whereは私が間違っているつもりですここで見つける私のコードです:主なクラスが見つかりません

package 
na.edu.pon.oop210s.s12012.s211045888.sms; 
/** 
* Student Number: <211045888> 
* Date: 3/11/12 7:47 pM 
* Exercise: <Exercise 4> 
* Created using: <netbeans> 
*/ 


public class sms { 

class Student 
{ 
    int studentID; 
    String studentName,course; 

public void  setName(String studentName){ 
this.studentName = studentName; 
} 
public void  setNewId(int studentID){ 
this.studentID = studentID; 
} 

public void  setCourse(String course){ 
this.course = course; 
} 
public String  toString(){ 
return studentID +" "+studentName.toString(); 

} 
    class lecturer{ 
     int staffID; 
     String staffName,taughtCourses; 

     public void  setName(String staffName){ 
this.staffName = staffName; 
} 
public void  setNewId(int staffID){ 
this.staffID = staffID; 
       } 
public String  toString(){ 
return staffID +" "+staffName.toString(); 

} 
     class course{ 
      String code,description; 
      double units; 

course(String code, String CD){ 
this.code=code.toUpperCase(); 
description=CD.toUpperCase(); 
} 
public String getCode(){ 
return code; 

         } 


/** 
* @param args the command line arguments 
*/ 
public class SMSMain { 
public void main(String[] args) { 
    // TODO code application logic here 
    Student a = new Student(); 
    a.studentName = "Maria"; 
    a.studentID = 1236; 
    System.out.println("Student Name:" + a.studentName); 
    System.out.println("Student Name:" + a.studentID); 

} 
} 



     }}}} 
+0

回答を参照してください。また、クラスSMSMainを独自のSMSMain.javaに配置します。 –

+0

私は自分のファイルにSMSMainを置いていますが、okですが、他のクラスは別のファイルにあり、メインクラスファイルには見つかりません。それらも挿入する必要がありますか? – kamweshi

+0

より良いyes、Student.javaなど。 –

答えて

4

あなたはstaticキーワードで

public static void main(String[] args){/* ... */} 

を使用する必要があります。

また、クラスSMSMainを自分のファイルSMSMain.javaに入れます。次に、必要なクラスをインポートします(Eclipseではctrl-shift-o)。

本当にいい理由がない限り、自分のファイルにクラスを入れてみてください。

+0

私は静的を置くと、このエラーが発生します:内部クラスの不当な静的宣言na.edu.pon.oop210s.s12012.s211045888.sms.sms.Student.lecturer.course.SMSMain 修飾子 'static'は定数でのみ使用できます変数宣言 – kamweshi

+0

あなたは間違ってそれをしました。 – duffymo

0

メインクラスは、静的にする必要があります。このよう

public static void main(String[] args) 
{ 
    // main goes here 
} 
+0

は静的でなければならない方法です – DPM

0

public static void main(String[] args) {

0

あなたのコーディングスタイルが混乱しているとpublic void main(String[] args) {を交換してみてください。 Oracle/Sun Javaのコーディング標準について学んでください。

主な方法は、正確な署名に従っていて、内部クラスの1つではなく、パブリック外部クラスに関連付けられている必要があります。

package na.edu.pon.oop210s.s12012.s211045888.sms; 

/** 
* Student Number: <211045888> 
* Date: 3/11/12 7:47 pM 
* Exercise: <Exercise 4> 
* Created using: <netbeans> 
*/ 

// bad naming. What's sms? student management system? sado-masochistic society? 
public class sms {  
    public static void main(String [] args) { 
    } 
} 
関連する問題