2017-09-07 13 views
-1
public class student 
{ 
    private String name,int age; 
    public student() 
    { 
     String name = "Dominic"; 
     int age = 10; 
    } 
    public String getName() 
    { 
     return name; 
    } 
    public int getAge() 
    { 
     return age; 
    } 
    public static void main(String[] args) 
    { 
     student s= new student(); 
     System.out.println("The name and age of employer is:"); 
     System.out.print(s.getName()+"\tand\t"+s.getAge()); 
    } 
} 
+3

短い答え...あなたのコンストラクタでは、クラスレベルの変数の代わりに*新しいローカル変数*を初期化しています。あなたは決してクラスレベルのものを設定しません。 – David

答えて

0

コンストラクタ内の変数の型宣言を削除します。あなたは、文字列を追加することによって、コンストラクタで新しい変数の名前と年齢を宣言し、この方法であなたは、クラスのフィールドに値ではないローカルなコンストラクタ変数を割り当てる

age = 10; 
name = "Dominick"; 

変更をint型。また、これを使用してフィールドを指定することも検討してください。

this.age = 10; 
this.name="Dominick"; 
関連する問題