방금 정적 메소드 가져 오기가 좋지 않다는 리뷰 의견이 있습니다. 정적 가져 오기는 주로 정적 메소드가있는 DA 클래스의 메소드입니다. 따라서 비즈니스 논리의 중간에 현재 클래스에 속하는 것처럼 보이는 da 활동이있었습니다.
import static some.package.DA.*;
class BusinessObject {
void someMethod() {
....
save(this);
}
}
리뷰어는 코드를 바꾸는 데 열중하지 않았지만 그렇게하지는 않았지만 나는 그에게 동의합니다. 정적 가져 오기가 아닌 이유 중 하나는 메소드가 정의 된 위치가 혼란스럽고 현재 클래스가 아니고 수퍼 클래스가 아니기 때문에 정의를 식별하기에는 너무 시간이 걸리기 때문입니다 (웹 기반 검토 시스템에는 클릭 할 수 없음) IDE와 같은 링크 :-) 나는 이것이 중요하다고 생각하지 않습니다. 정적 가져 오기는 여전히 새롭고 곧 우리는 그것들을 찾는 데 익숙해 질 것입니다.
그러나 내가 동의하는 다른 이유는 규정되지 않은 메소드 호출이 현재 객체에 속하는 것으로 보이므로 컨텍스트를 뛰어 넘지 않아야하기 때문입니다. 그러나 그것이 실제로 속해 있다면, 그 슈퍼 클래스를 확장하는 것이 합리적입니다.
그래서, 때 않습니다 그것은 정적 수입 방법에 대한 이해가? 언제 했어요? 정규화되지 않은 전화 모양을 좋아했습니까?
편집 : 대중적인 의견은 아무도 정적 가져 오기 메소드를 현재 클래스의 메소드로 혼동하지 않을 것입니다. 예를 들어 java.lang.Math 및 java.awt.Color의 메소드입니다. 그러나 abs와 getAlpha가 모호하지 않으면 readEmployee가 왜 그런지 알 수 없습니다. 많은 프로그래밍 선택에서와 마찬가지로, 나는 이것 또한 개인적인 선호 사항이라고 생각합니다.
답변 해 주셔서 감사합니다. 질문을 닫습니다.
import static
, 기능은 다음과 같습니다static import