기록하는 중/JAVA

[Java] Object 클래스

성장하는 요롱이 2023. 12. 17. 23:28
 java.lang 패키지

  -  자바 프로그래밍에 필요한 기본 클래스를 제공

  -  java.lang 패키지에 존재하는 클래스를 사용할 때는 import 문이 필요 없음

 

  주요 클래스

  -  Object, System, Math

  -  String, StringBuffer

  -  Thread

  -  Exception, Throwable, Error

  -  포장 클래스  :  Number, Integer, Double, Character, Boolean 등

 

  Object 클래스와 주요 메소드

  -  모든 클래스의 조상이 되는 클래스 

  -  모든 클래스는 자동으로 Object 클래스를 상속받음

  -  클래스 계층 구조에서 루트가 되는 클래스

  

Object 주요 메소드

  -  protected Object clone( ) : 객체를 복제하여 반환

  -  public boolean equals(Object obj)  :  두 객체 변수를 비교해서 두 변수의 참조값이 같을 때 true 

  -  public int hashCode( ) : 객체를 식별하는 정수값을 반환

  -  public String toString( )  :  개체의 문자열 반환

 

  String toString( ) 메소드

  -  객체의 문자열 표현을 반환 : 클래스이름@16진수해시코드로 표현

  -  문자열의 + 연산, System.out.print( ) 등에서 필용함

class MyClass1{  }
// 메인에서
MyClass1 my_class1 = new MyClass1( );
System.out.println(my_class1)   
// 결과  :  MyClass1@16진수해시코드

  -  자식 클래스에서 재정의할 수 있음

  -  String, Integer 클래스 등에서 재정의되어 있음

 

 boolean equals(Object obj)메소드

  -  두 객체 변수를 비교하여 두 변수의 참조값이 같을 때 true를 변환

  -  Object 클래스에서 equals( )의 의미 : obj1.equals(obj2)의 뜻 obj1 == obj2

   Integer x = new Integer(5);
   Short a = 5;
   System.out.println(x.equals(a));   // 결과 : false

  -  자식 클래스에서 재정의할 수 있음

  -  String, Integer 클래스 등에서 재정의 되어 있음

 

  Object clone() 메소드

  -  객체를 복제하여 리턴함

  -  'Cloneable 인터페이스를 구현한 클래스'의 객체만 clone( ) 메소드를 호출할 수 있음

  -  CloneNotSupportedException처리를 해줘야 함