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가 명시적이라 가독성이 더 좋은 것 같다.
'개발자 > .NET' 카테고리의 다른 글
C# (C Sharp) Abstract class, Abstract method (0) | 2021.01.22 |
---|---|
C# (C Sharp) Inheritance 상속 (0) | 2021.01.22 |
C# Class Members(클래스 멤버), Constructor(생성자) (0) | 2021.01.22 |
C# (C Sharp) Overloading(오버로딩), Overriding(오버라이딩), Polymorphism(다형성) 자바와 차이 (0) | 2021.01.22 |
C# (C Sharp) Method Default Parameter Value (0) | 2021.01.22 |