class Object

 

클래스 Object는 Java에서 모든 클래스의 superclass이다.

 

class Object의 멤버 메서드

    boolean equals(Object obj)

    int hashCode()

    String toString()

    Class<?> getclass()

 

Java의 모든클래스는 내가 만들어 주지 않아도 이미 위의 메서드를 가지고 있다.

다만 내 의도대로 작동하지는 않을 것이다.

(오버라이딩을 해서 써야함) 

그럼 왜 만들어놨을까???

 

toString()

 

만약 toString메서드를 따로 만들어주지 않는다면

예 : PhoneBook@db12340

이런식으로 반환됨

 

equals(Object)

 

Object클래스의 equals 메서드의 매개변수는 Object 타입이다.

매개변수로 제공된 객체와 자기 자신의 동일성을 검사한다.

이 메서드를 의도대로 사용하려면 오버라이딩 해야한다.

 

Class Class

 

모든 클래스는 하나의 Class 객체를 가진다.

이 객체는 각각의 클래스에 대해서 유일하다.

메서드 getClass()는 Object 클래스가 제공하는 메서드이며, 이 유일한 Class 객체 반환한다.

 

 

Wrapper class

 

Java에서 primitive type데이터와 non-primitive type데이터,

즉 객체는 근본적으로 다르게 처리된다.

 

가령 Object 타입의 배열에는 다형성의 원리에 의해서 모든 종류의 객체를 저장할 수 있다.

하지만 int double, char 등의 primitive type 데이터는 저장할 수 없다. 객체가 아니므로

 

때때로 primitive type 데이터를 객체로 만들어야할 경우가 있다.

이럴 때 Integer, Double , Character 등의 wrapper class를 이용한다.

 

기본 타입의 데이터를 하나의 객체로 포장해주는 클래스

예)

  int a = 20;

  Integer age = new Integer(a);

  int b = age.intValue(); // b는 20이됨

 

데이터 타입간의 변환 기능을 제공한다.

예)

   String str ="1234";

   int d = Integer.parseInt(str);

'알고리즘 with 자바 > 자료구조' 카테고리의 다른 글

추상클래스와 인터페이스 2  (0) 2021.07.07
추상클래스와 인터페이스 1  (0) 2021.07.07
스케줄러 프로그램  (0) 2021.07.01
상속 3  (0) 2021.06.30
상속 2  (0) 2021.06.29

+ Recent posts