개발자의 공부노트

Java 07 - java.lang 패키지

2021. 7. 15. 13:24프로그래밍 언어/JAVA

java.lang 패키지 클래스

 

 

Object 클래스


  • 모든 클래스의 최고 조상이다.
  • 11개의 핵심 메서드를 가지고 있다.
  • notify(), wait()등은 쓰레드와 관련된 메서드
  • equals() - 객체 자신과 주어진 객체를 비교(같으면true 다르면false)
  • hashCode() - 객체의 해시코드를 반환하는 메서드이다. 다량의 데이터를 저장, 검색하는 해싱기법에 사용
  • toString() - 객체의 정보를 문자열로 제공할 목적으로 정의된 메서드
  • clone() - 객체 자신을 복제해서 새로운 객체를 생성하는 메서드
  • getClass() - 자신이 속한 클래스의 Class객체를 반환하는 메서드

 

 

String 클래스


  • 문자형 배열과 그에 관련된 메서드들이 정의되어 있다.
  • Stirng 인스턴스의 내용은 바꿀 수 없다.
  • 인스턴스의 내용을 바꿀 경우 재선언 하거나 기존문자열 뒤에 추가문자열을 붙인다.

 

 

StringBuffer 클래스


  • Stirng처럼 문자형 배열을 내부적으로 가지고 있다.
  • String클래스와 달리 내용을 변경할 수 있다.
  • String클래스와 달리 equals()를 오버라이딩 하지 않는다.
  • 문자열을 변경하거나 사이즈를 조정하는 등의 메서드들로 구성되어 있다.
  • 멀티 스레드 환경에서 동기화를 지원한다.
  • 동기화는 성능 저하가 생기므로 단일 스레드 환경에서는 StringBuilder를 사용하는 것이 좋다.

 

 

Math 클래스


  • 수학계산에 유용한 메서드로 구성되어 있다.
  • 모두 static 메서드이다.

 

 

Wrapper 클래스


  • 기본형을 클래스로 정의한 것이다.
  • 기본형 값도 객체로 다뤄져야 할 때가 있기 때문에 생겨난 클래스
  • 내부적으로 기본형 변수를 가지고 있다,
  • 값을 비교하도록 equals()가 오버라이딩 되어있다.
  • 형변환에 유용한 메서드들을 가지고있다.
  • 기본형에 null을 반환해야할 경우에도 사용한다.
  • Boolean, Character, Byte, Short, Integer, Long, Float, Double 클래스가 존재한다.

 

 

Number 클래스


  • 숫자를 멤버변수로 갖는 클래스의 조상(추상클래스)이다.

'프로그래밍 언어 > JAVA' 카테고리의 다른 글

Java 08 - 컬렉션 프레임워크 2  (0) 2022.03.20
Java 08 - 컬렉션 프레임워크 1  (0) 2021.07.23
Java 06 - 객체지향개념 2  (0) 2021.06.28
Java 05 - 객체지향개념 1  (0) 2021.06.22
Java 04 - 조건문과 반복문  (0) 2021.06.08