Java

[Java] 중첩 클래스, Wrapper 클래스, API 메소드, 자바 관련 단어들

Bay Im 2024. 3. 18. 12:57
  • 익명 객체 (Anonymous Object)
    • 일회성 메소드 재정의시 사용
    • 한번 쓰고 버릴 코드이기 때문에 굳이 이름을 붙여서 사용하지 않는다.
    • 예시
      • interface NormalCar {
            void run();
        }
        
        public class ex49_anonymousFunction {
            public static void main(String[] args) {
                // 일회성 익명 인터페이스 구현 객체를 선언/생성한다.
                NormalCar normalCar = new NormalCar() {
                    @Override
                    public void run() {
                        System.out.println("슈퍼카가 달린다.");
                    }
                };
                normalCar.run();
            }
        }
  • 중첩 클래스 (Nested class)
    • 클래스 안에 클래스가 들어가는 것
    • 외부 클래스(Outer)
      • 클래스 밖에 클래스를 선언
    • 내부 클래스(Inner)
      • 클래스 안에 클래스를 선언
      • 내부적으로 소비하고 끝나는 클래스는 내부 클래스로 선언
      • Inner 클래스를 static으로 선언하면 좀더 편하게 선언 가능하다.
    • 예시
      • class Outer {
            String name = "outer";
        
            class Inner {
                String name = "inner";
            }
        
            static class InnerStatic {
                String name = "inner static";
            }
        }
        
        public class ex50_nestedClass {
            public static void main(String[] args) {
                Outer outer = new Outer();
                System.out.println(outer.name);
        
                Outer.Inner inner = outer.new Inner();
                System.out.println(inner.name);
        
                // inner 클래스를 static으로 선언하면 좀더 편하게 선언 가능
                Outer.InnerStatic innerStatic = new Outer.InnerStatic();
                System.out.println(innerStatic.name);
            }
        }
  • Object 클래스
    • 자바 최상위 클래스이며, 모든 클래스가 상속 받는 클래스
    • 다형성을 이용하여 모든 클래스 객체를 전달할 수 있다.

 

API 메서드

  • API 메서드
    • hashCode()
      • 객체 생성시 자동으로 부여되는 ID 값
    • equals(비교대상)
      • 객체 비교
    • toString()
      • 객체를 문자열 표현으로 반환
  • String 관련 클래스
    • StringBuffer(”문자열”)
      • 문자열을 좀더 유연하게 제어가능
      • StringBuffer stringBuffer = new StringBuffer(”문자열”); 형태
      • 추가(append), 삽입(insert), 삭제(delete) 사용 가능
    • StringBuilder(”문자열”)
      • 대량의 문자열을 처리할 때 속도 향상
      • StringBuilder builder = new StringBuilder(”문자열”); 형태
      • 추가(append), 삽입(insert), 삭제(delete) 사용 가능
    • 추가(append), 삽입(insert), 삭제(delete)
      • stringBuffer.append(”끝에 추가할 문자열”);
      • stringBuffer.insert(추가할 인덱스, “문자열”);
      • stringBuffer.delete(시작인덱스, 끝인덱스);
  • Wrapper class
    • 기본 자료형 8개를 감싸서 클래스로 만든 것
      • 기본 자료형: int, long, short, byte, float, double, char, boolean
    • 클래스로 만들어야 다형성 이용 가능
    • 래퍼 클래스 종류
      • Integer, Long, Short, Byte, Charactor, Boolean
    • 숫자 클래스
      • Number
        • int, long, short, byte, float, double
    • 래퍼 클래스 변수 = 값; 형식
      • ex) Integer intValue = 10;

 

자바 관련 단어 정리

  • API (Application Programming Interface)
    • 함수/클래스 호출의 접점
  • SDK (Softwear Development Kit)
    • 소프트웨어 개발 툴 모음
  • Library
    • 함수나 클래스들의 모임
  • Framework
    • 어떤 소프트웨어를 만드는데 사용하는 근간
  • Collection
    • SW 모음
  • JDK (Java Development Kit)
    • Java + SDK
  • DLL (Dynamic-Link Library)
    • 동적 링크 라이브러리, 함수 및 클래스 모임
  • JAR (Java Archive)
    • .class 파일과 리소스(이미지, 텍스트), 메타 파일을 모아둔 것
    • 실행 가능한 압축파일

'Java' 카테고리의 다른 글

[Java] Thread  (0) 2024.03.18
[Java] Exception  (0) 2024.03.18
[Java] Abstract, Interface  (0) 2024.03.13
[Java] 상속, Override  (0) 2024.03.13
[Java] 접근 제어자, 생성자, 싱글톤 패턴  (0) 2024.03.13