티스토리 뷰

CodeSquad/Level2

toString이란

kkssry 2018. 10. 23. 09:29

"Object"클래스가 가진 메소드 중 "toString"메소드가 있습니다.

물론 "Object" 클래스의 모든 메소드는 모든 클래스가 사용이 가능합니다.

"toString" 메서드는 객체가 가지고 있는 정보나 값들을 문자열로 만들어 리턴하는 메소드 입니다.



이렇게 출력해보면 결과값에는 이상한 정보가 담기는데

이 값은 순수 "Object"의 "toString"결과 값입니다. (결국 의미없는 디폴트 값)






하지만 "Stirng" 클래스나 "File"클래스에서는 "toString"에 메소드를 재정의 하여 의미있는 값을 리턴해 줍니다.








toString() 메소드는 자동으로 호출된다


toString 매소드는 자동으로 호출 됩니다.


우리가  자주 사용하던 "String" 클래스 객체를 선언하여 

"toString"메소드 없이 그냥 객체 자체로 변수에 담긴 내용을 가져와 사용했었습니다.







위 코드를 보시면 "str"이라는 "String"클래스의 객체 입니다.


그런데 신기하게도 객체임에도 불구하고 

"str"독단적으로 저렇게 사용 되어지고 있습니다.


바로 이 지점에서 "toString"이 자동으로 호출 되는 것입니다.

이것을 증명하기 위해서 우리가 구현한 "Human"클래스로 한번 시도 해보겠습니다.







아까 만들었던 소스에서 "toString"만 제거 하였습니다.

출력 결과는 잘나오고 있는걸 확인할수 있습니다



출처: http://backback.tistory.com/68 [Back Ground]

'CodeSquad > Level2' 카테고리의 다른 글

개발자가 많이 하는 실수1  (1) 2018.10.27
사용자 정의 정렬  (2) 2018.10.27
arraylist 깊은복사 얕은복사  (1) 2018.10.23
면담  (2) 2018.10.23
숫자만 추출  (3) 2018.10.06
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함