Java는 C # 속성과 어디에 있습니까?
이 질문에 이미 답변이 있습니다.
C # 속성 (get 및 set method)은 매우 유용한 기능입니다. Java에도 C # 속성과 어느 것이 있습니까? Java에서 다음 C # 코드와 같은 것을 구현할 수있는 방법을 의미합니다.
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
미리 감사드립니다
아니요, Java는 동등성이 없습니다. 접근 자 및 뮤 테이터 메서드, getter 및 setter 메서드에 대한 멋진 이름 만 있습니다. 예를 들면 :
public class User {
private String name;
public String getName() { return this.name; }
public void setName(String name) { this.name = name; }
}
보일러 플레이트 자바 코드를 작성하는 데 따른 고통을 없애기 위해 Project Lombok 을 살펴볼 수 있습니다 . getBlah () 및 setBlah () 메서드를 제공하는 @Getter 및 @Setter 주석을 사용할 수 있습니다.
public class GetterSetterExample {
@Getter @Setter private int age = 10;
}
또는 @Data를 사용하면 자동으로 hashCode (), equals (), toString () 및 getter 메소드와 함께 최종 필드가 아닌 필드에 대한 setter를 구현합니다.
@Data public class DataExample {
private String name;
}
그러나 프로젝트에서 내가 발견 한 문제는 모두 약간의 존재 교이며, 혼란스럽고 스러울 수 있고, 자동 실행이 작동하는 이클립스 (또는 무엇이든) 설치를 설치해야합니다.
속성은 단위로 작성 getters
하고 setters
캡슐화하는 편리하게 할 수 있고 호출 지점에서 좋은 구문을 제공합니다.
Window.Title = "New"; //which looks natural
로 동안 getters
과 setters
는 일반적으로
Window.setTitle("New");
속성 (및 이벤트)에 대한 C #과 행사 지원을 Java에 추가하는 제안이 있었지만 다음 버전의 Java (Java 7)에서는 거부 된 것입니다.
보다 :
전용 변수를 선언하고 메서드를 직접 호출 할 수 있습니다. 그러나 Eclipse를 사용하는 경우 변수를 클릭하고 "소스"및 "게터 및 세터 생성"을 선택할 수 있습니다. 이 C # 속성은 편리합니다.
참고 URL : https://stackoverflow.com/questions/2963243/does-java-have-something-similar-to-c-sharp-properties
'ProgramingTip' 카테고리의 다른 글
내 레일이 환경에 어떤 진단이 있습니까? (0) | 2020.10.21 |
---|---|
뷰 열을 NULL이 아닌 만드는 방법 (0) | 2020.10.21 |
finish () 후 onCreate 흐름이 계속됩니다. (0) | 2020.10.21 |
JE / JNE와 JZ / JNZ의 차이점 (0) | 2020.10.21 |
--no-colors와 같은 인공위성을 가진 .mocha 파일이 있습니까? (0) | 2020.10.21 |