◎ JAVA

◆ Math 클래스

  • 생성자가 없다.
    - 생성자가 없을 경우
  1. 아예 생성이 불가 (일회용 메소드 덩어리)
  2. 미리 생성해두었거나 대행 해주는 경우 (싱글톤/팩토리패턴)
    • 이 클래스는 모든 필드와 메소드가 static이므로 첫 번째 경우라 볼 수 있다.
    • 아무데서나 편하게 부를 수 있는 일회용 계산 클래스이다.

// Math a = new Math();
// Math 클래스는 생성자가 없어서 객체를 생성할 수 없다.

◆ System 클래스

  • 외부 환경과 프로그램을 이어주는 것이다.
  • 생성자 없음(아예 생성이 불가 / 미리 생성해두었거나 대행해주는 경우)
  • Math 클래스와 같은 이유로 생성자가 없다.(어이서나 편하게)
  • 프로그램 외부환경(OS)에 대한 정보 및 기능을 제공
  • static은 객체 없이 사용할 수 있지만 static이 있으면 객체 없이도 사용 가능하다.
    System.out.println("hello"); //표준 출력 (System.out은 출력 통로이다.)
    System.err.println("hello"); //표준 오류 출력 (System.err은 오류 출력 통로이다.)
  • 프로그램 종료 (숫자는 외부 환경으로 전달된다.)
    - 숫자 0은 일반적으로 종료 되었다는 뜻이다, 0이외의 값은 비이상적으로 종료 되었다는 뜻이다.
    - 아래에 프로그래밍 코드는 실행되지 않는다.
    System.exit(0);

◆ Runtime 클래스

  • 실행 환경 (외부 환경과 소통할 수 있는 클래스이다.)
  • 생성자 없음(아예 생성이 불가 / 미리 생성해두었거나 대행 해주는 경우)
  • 생성이든 렌탈이든 부탁을 해서 얻어와야 하는 상황
  • 만들 때 반드시 지켜야 하는 규칙이 있는 경우
  • 반드시 생성 메소드가 static으로 존재한다. (get... 으로 되어 있음)

// Runtime r = new Runtime(); // 직접생성(불가)
Runtime r = Runtime.getRuntime(); // 생성의뢰(가능)

◆ StringBuilder

  • non-thread-safe : 대기줄을 세우지 않고 동시다발적으로 처리하는 구조이다.(처리x)
  • non-thread-safe 이므로 빠르지만 여러명이 동시에 접근하면 처리가 복잡해진다.
  • 단일 사용자 환경이라면 이용을 추천한다.

◆ Wrapper 클래스

  • 원시형 데이터(8개)에 필요한 기능을 제공하는 클래스

  • 원시형 데이터
    boolean
    byte
    short
    int
    long
    float
    double
    char

  • 클래스
    Boolean
    Byte
    Short
    Integer
    Long
    Float
    Double
    Character

  • 해당 클래스에 변환 명령
    Boolean.parseBoolean()
    Byte.parseByte()
    Short.parseShore()
    Integer.parseInt()
    Long.parseLong()
    Float.parseFloat()
    Double.parseDouble()
    없다.

데이터를 간단히 쓰고 싶을 때는 원시형 데이터를 사용하고 클래스를 사용하고 싶을 때는 클래스로 사용한다.

profile
Backend Developer

0개의 댓글

Powered by GraphCDN, the GraphQL CDN