1. C#

class Person {
  private string name;	// field
  public string Name		// property
  {
    get { return name; }	// Getter
    set { name = value; }	// Setter
  }
}


class Main {
  static void Main(string[] args) {
    Person myObj = new Person();
    myObj.Name = "Anna";			// Set the value using 'Setter'
    Console.WriteLine(myObj.Name);	// Get the value using 'Getter'
  }
}

 

2. Java

public class Person {
  private String name;	// field

  // Getter
  public String getName() {
    return name;
  }

  // Setter
  public void setName(String newName) {
    this.name = newName;
  }
}


public class Main {
  public static void main(String[] args) {
    Person myObj = new Person();
    myObj.setName("Anna");			// Set the value using 'Setter'
    System.out.println(myObj.getName());	// Get the value using 'Getter'
  }
}

 

getter, setter야 IDE가 자동 생성 해주긴 하지만... 그래도 C#이 이 부분은 Java를 베껴 만들면서 최적화를 한 것 같다.

근데... 장점으로 볼 만 한건 코드는 짧고 간결해지는데... 단점으로는 역시 자바쪽이 훨씬 getter, setter가 명시적이라 가독성이 더 좋은 것 같다.

+ Recent posts