Lang/Java(33)
-
15. 컬렉션
1. 컬렉션 프레임 워크 프레임워크(Framework) 잘 정의된, 약속된 구조나 골격 잘 정의된 클래스들의 모임 모든 컬렉션 클래스를 표준화된 방식으로 다룰 수 있도록 체계화됨 컬렉션(Collection) 데이터의 저장, 관련있는 알고리즘을 구조화 해놓은 프레임워크 데이터의 저장을 위해 정의된 클래스 변수들의 조직적인 집합 컬렉션 프레임워크 데이터 그룹을 저장하는 클래스들을 표준화한 설계 컬렉션 컬렉션 클래스 데이터를 보관, 삭제, 검색, 삽입등의 기능 메모리의 사이즈를 동적으로 확장 데이터 삽입 시 메모리 확장 배열과의 차이 배열 같은 타입의 변수를 여러개 저장 사용이 간단, 첨자연산이 빨라 효율이 좋다 최초 생성시 지정한 크기 변경 불가 컬렉션 크기가 가변적, 미리 크기를 결정하지 않아도 된다 컬렉..
2023.03.28 -
14. 예외
1. 예외 기본 a. 예외 란 프로그램의 실행 도중에 발생하는 예상치 못한 오류 컴파일 시 발생하는 문법적인 에러는 예외 x 나눗셈 시 나누는 수로 0이 입력 나이 입력 시 0보다 작은 값 입력 등 처리되지 않은 예외는 프로그램의 실행 중단 원인 에러 컴파일 에러(compile error) 실행 에러(Runtime error) : 프로그램 실행 도중 발생되는 에러 에러(error) : 메모리부족, 스택오버플로우 등 발생하면 복수할 수 없는 심각한 에러 예외(exception) : 발생하더라도 수습될 수 있는 비교적 덜 심각한 오류 b. 예외클래스 Exception 클래스 getMessager()메서드 String형 반환 예외가 발생한 원인에 대한 설명 발생한 예외 클래스의 인스턴스에 저장된 메세지 획득 ..
2023.03.27 -
13. 패키지
1. 패키지란 클래스의 묶음 서로 관련된 클래스들끼리 묶어 효울적으로 관리 물리적으로 하나의 폴더 패키지에 속한 클래스는, 해당 파일에 존재하는 class파일이어야함 클래스의 실제이름 패키지명을 포함한 이름(java.lang.String) jar 클래스와 관련된 파일들이 압축되어 있는 것 java_jdk_jre_lib_rt.jar jdk의 기본 클래스들이 기능할 수 있는 이유 2. 패키지의 선언 package 패키지명; 선언문은 주석 공백 제외 첫 번째 문장이어야 한다. 하나의 소스파일에 한번만 선언가능 모든 클래스는 반드시 하나의 패키지에 포함되어야함 패키지를 선언하지 않으면, 이럼읎는 패키지 기본 제공 패키지는 점(.)을 구분자로 하여 계층구조로 구성 가능 cmd 내 컴파일 시 javac -d . T..
2023.03.27 -
12. 인터페이스
1. 인터페이스 란 일종의 추상 클래스 추상메서드와 상수만을 멤버로 가질 수 있다 일반메서드나 멤버변수를 가질 수 없다 메서드 목록만을 가지고 있다 뼈대로만 구성 상속받을 클래스가 구현해야 할 기능을 나열 일종의 약속, 최소한의 계약 interface 인터페이스명{} 모든 멤버변수는 public static final, 생략가능 모든 메서드는 public abstract, 생략가능 2. 인터페이스 구현 상속받을 클래스에서class 클래스명 implements 인터페이스명{} extends를 쓰지않고 implements를 쓴다. interface IAnimal{ public abstract void sound(); void display(); //접근제한자 생략 가능 } //IAnimal 인터페이스를 구현..
2023.03.27 -
11. 추상
1. 추상메서드 (abstract method) 메서드의 구현부가 없는 것 오버라이딩 관계를 형성하기 위해 정의된 메서드public abstract int func(int a); 메서드 블락{}을 포함하지 않는다 상속 계층의 부모클래스에서 자식 클래스를 위해 메서드 시그니처만 정의 자식클래스에서 오버라이딩 해야만 호출가능 부모클래스에서는 선언부만 작성 자식클레스에서 기능 구현 2. 추상클래스 (abstract class) 미완성 클래스 객체 생성 불가 상속을 통해 자식클래스로만 완성 가능 추상메서드 하나라도 있다면 추상클래스 추상메서드가 없더라도 abstract 선언으로 추상클래스 사용 가능 인스턴스화 목적이 아닌, 단지 상속의 관계를 형성하기 위해 사용abstract class 클래스명{} 3. 특징 ..
2023.03.27 -
10. 다형성
1. 다형성 a. 다형성이란 부모 클래스 타입의 참조변수로 자식클래스의 인스턴스를 참조Parent p = new Child(); 부모의 참조변수로는 부모의 멤버들만 사용 오버라이딩 메서드의 경우 자식 메서드 호출 반대의 경우는 불가 한 타입의 참조변수로 여러 타입의 객체를 참조 부모 타입이 파생된 모든 자식타입을 가리킬 수 있다. 여러 개의 개별 클래스를 하나의 부모클래스로 통합관리 부모 타입의 변수로 자식 타입을 일관되게 관리할 수 있다. b. 다형성 이용 ex1class Parent{ public void parentFunc() { System.out.println("부모메서드"); } public void showInfo() { System.out.println("parent-showinfo"); ..
2023.03.27