2016-04-18 16 views
0

私の連絡先クラスのgetterメソッドとsetterメソッドに問題があります。誰かが私にこれらの方法をより良く理解させるのに役立つでしょうか?おかげでここに私のコードです私はこれまでのところ、私の連絡先クラスのgetterメソッドとsetterメソッドのため私の連絡先クラスのgetterメソッドとsetterメソッドの問題

public class Contact { 

     public static void main (String []args){ 

     } 

     private String name; 

     private String email; 



     //constructor, validates the email to make sure the '@' character is present 

     Contact(String name, String email){ 

      this.name = name; 

      if(email.indexOf("@") >= -1) 

        System.out.println("invalid email"); 

      else 

        this.email = email; 

     } 

     //method points out the contact's name and email 

     void getContactList(){ 

      System.out.println(name + "" + email); 

     } 

     //setter method for name 

     void getname(String name){ 

        this.name = name; 

     } 

     //setter method for email 

     void getemail(String email){ 

      this.email = email; 

     } 

     //getter method for name 

     //getter method for email 

    } 
+2

あなたはどのような問題に直面していますか? –

+0

なぜあなたはあなたの設定メソッド "getfoo"を呼び出していますか?標準的な命名規則に従い、コードをもっと読みやすくします。 – azurefrog

+0

Dude。あなたの2つの "セッター"メソッドは 'getname(String name)'と 'getemail(String email)'という名前です...それはそれ自体では間違っています。次にgetterはprintlnではなく、値を返すことになっています。 –

答えて

1

ゲッターとセッターがそうのように実装されています:

// setter 
void setFoo(Foo foo) { 
    this.foo = foo; 
} 

// getter 
Foo getFoo() { 
    return foo; 
} 

現在、あなたの「ゲッター」は、実際セッターで、あなたゲッターを実装していない

0

ゲッターとセッターのペアは、変数をプライベートに設定することで変数を安全にする一般的な方法です。オブジェクトの変数の値をgetVarで取得し、値をsetVar(Obj value)に設定することができます。

あなたのコードはそうのように修復することができます。

public class Contact { 

private String name; 

private String email; 



//constructor, validates the email to make sure the '@' character is present 

public Contact(String name, String email){ 

    this.name = name; 

    if(email.indexOf("@") == -1) { //@ not present 
      System.out.println("invalid email"); 
      this.email = null; 
    } 

    else 
      this.email = email; 

} 

//method points out the contact's name and email 

public String getContactList(){ 

    return name + "" + email; 

} 

//setter method for name 

public void setName(String name){ 

      this.name = name; 

} 

//setter method for email 

public void setEmail(String email){ 

    this.email = email; 

} 

//getter method for name 
public String getName() { 
    return name; 
} 
//getter method for email 
public String getEmail() { 
    return email; 
} 
} 

私は非常にあなたがプログラムを作り始める前に、あなたは一般的なJavaのパラダイムにいくつかのより多くの研究を行うお勧めします。 Java Beanの内容、アクセスの種類などを確認してください。

+0

フィードバックをいただきありがとうございます。私はまだJavaに新しいです私はまだすべてがお互いに動作する方法を学んでいます。 – hondro96

関連する問題