본문 바로가기

구디 아카데미 수료 과정/JAVA

구디아카데미 후기/ 국비지원IT개발자 취업 / 김명신 강사님/클라우드 활용 자바개발자 양성과정/•13일차/11.08

Object 클래스 : hashCode 메서드

hashcod: 원래 의미는 JVM이 객체를 구별하기위한 고유의 값 (참조값)

               물리적동등성 : 실제 같은 객체인 경우

               논리적동등성 : 내용 기준으로 같은 객체로 판단되는 경우

                ->논리적 동등성을 위해 오버라이딩이 필요함.

 

두 객체가 논리적으로  동등하다는 판단 기준

1. equals 메서드의 결과가 true

2. hashCode 메서드의 결과가 동일한 경우

 

equals 메서드 오버라이딩시 hashCode도 함께 오버라이딩을 권장

 

 



매우중요 !

String 클래스

정적인 문자열 (변경불가문자열)

1. + 연산 가능, 문자열<= 문자열 + 기본형

2. 대입연산자(=)로 객체 생성가능

3. final 클래스임 (다른 클래스의 부모클래스 불가 ) (String클래스 상속받으려 하지마~)

 

 

 

 

String 클래스의 주요 메서드

 

 

 

 



ABC123456으로 출력하려면 어떻게 바꿔야해?? (String객체는 절대 안바뀌기 때문이야??)

 

 

아래 참고

 

 

 

 

count() 메서드 구현하기   

 

 

 

 

String.format = printf랑 같다고 보면됨. 

(StringEx4_1108) 양이 너무 방대하니  이클립스로 보기

 

 

StringBuffer / StringBuilder 클래스 : 동적문자열 쓰레드에 동기화되어있는 여부로 구분되는건데 아직 안배웠으니 패스~

 -두 개 클래스의 멤버 메서드는 동일함.

 - equals 메서드를 오버라이딩 안함 -> 내용비교 불가능

 -> 내용 비교를 위해서는 문자열로 변경해야함 toString() 메서드 이용

StringBuilder로 바꿔도 같은 결과가 나옴

 

 

 

 

Math클래스

수치계산관련 메서드, 상수 원주율(PI) , 자연로그(E)를 멤버로 가진다.

final 클래스이기때문에 상속불가 (다른클래스의 부모 불가)

객체생성 불가 : 생성자의 접근제어자가 private임

=>모든 멤버가 static(클래스멤버)임  

 

 

 

소감: 객체 구조화 이후로는 뭔가 함수? 기능 위주로 배우고있는거같은데

이해하는 과정은 덜하지만 양ㅇ ㅣ 너무 방대한듯

자주 눈에 발라서 익히기

 

구디아카데미 후기/ 국비지원IT개발자 취업 / 김명신 강사님