본문 바로가기

Back-End/JAVA

[JAVA] equals() 메소드 Overriding equals() 메소드를 오버라이딩 할 때에 만족해야하는 다섯가지 조건이 존재한다.재귀 (reflexive) : null 이 아닌 x 라는 객체의 x.equals(x) 결과는 항상 true 여야 한다.대칭 (symmetric) : null 이 아닌 x 와 y객체가 있을 때 y.equals(x) 가 true 를 리턴했다면, x.equals(y) 도 반드시 true 를 리턴해야만 한다.타동적 (transitive) : null 이 아닌 x, y, z 가 있을 때 x.equals(y) 가 반드시 true 를 리턴해야만 한다.일관 (consistent) : null 이 아닌 x 와 y 가 있을 때 객체가 변경되지 않은 상황에서는 몇 번을 호출하더라도, x.equals(y) 의 결과는 항상 true 이거나 항상 .. 더보기
[JAVA] 접근제어자 (Access modifier) 자바에 존재하는 4개의 접근 제어자 (Access modifier)public : 누구나 접근할 수 있도록 할 때 사용.protected : 같은 패키지 내에 있거나 상속받은 경우에만 접근 가능.package-private (default) : 아무런 접근 제어자를 적어주지 않을 때, 같은 패키지 내에 있을 때만 접근 가능.private : 해당 클래스 내에서만 접근 가능. 추가적으로 이야기하자면하나의 파일에서 두개 이상의 클래스를 정의하고 작성할 수 있지만 클래스 앞에 public 의 접근제어자를 붙이게 되는 경우에는 public 클래스는 하나여야 하며, public 클래스명은 파일명과 같아야 한다. 더보기
[JAVA] import static import static 은 JDK 5 부터 추가된 import 이다!import static 은 static 한 변수(클래스 변수)와 static 메소드를 사용하고자 할 때 용이하다. import static 을 사용하지 않고 static 변수에 접근하거나 메소드를 사용하는 경우에는 import [패키지명].[클래스명]; [클래스명].[static 변수];[클래스명].[static 메소드](); 와 같이 사용해야한다.하지만 import static 을 사용하는 경우에는 import static [패키지명].[클래스명].*;// 또는 // import static [패키지명].[클래스명].[변수명];// import static [패키지명].[클래스명].[메소드명]; [static 변수];[static .. 더보기
[JAVA] 패키지 시작 이름 패키지 시작 이름java : 자바 기본 패키지 (JDK 벤더에서 개발)javax : 자바 확장 패키지 (JDK 벤더에서 개발)org : 일반적으로 비 영리단체 (오픈 소스) 의 패키지com : 일반적으로 영리단체 (회사) 의 패키지대표적인 오픈소스 그룹의 아파치 코드들은 모두 org.apache 로 시작한다.홈페이지는 http://www.apache.org 인데, 도메인 이름을 거꾸로 한 org.apache 로 시작하는 것이다.그래서 보통 회사의 패키지는 대부분 com 으로 시작한다. 더보기
[JAVA] 배열형 매개변수 메서드에 배열형 매개변수를 받을 수 있다. public void arbitrary(String name, int ... numbers) 와 같은 형식으로 배열의 크기를 정하기 난감한 상황에서 쓸 수 있는 방법이다.주의할 점은 이 방법을 사용할 때에는 하나의 메소드에서 한번의 배열형 매개변수만 사용가능하고, 여러 매개변수를 사용할 때에는 배열형 매개변수는 가장 마지막에 위치해야한다는 것이다! printf 메서드 같은 경우에 printf(String format, Object ... args) 의 배열형 메서드로 이루어져 있는데, 그렇기 때문에 System.out.printf("Name: %s Phone: %s", dto.name, dto.phone); 과 같이 사용할 수 있다! 참고 : (서적) 자바의 신 더보기