CP1_07.객체지향 프로그래밍_Advanced_파일과 예외처리
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, interface, 파일과 예외처리, 내부클래스9. 파일과 예외처리1. 파일 입출력 클래스2. 파일 쓰는 법3. 컴파일 오류를 없애는 방법 2가지4. try-catch 더 알아보기ㄴ4.1. ArithmeticExceptionㄴ4.2 try-catch문 실행순서ㄴ여러 catch 문5. 프로그램 오류6. 예외 클래스7. finallyㄴ7.1. finallyㄴ7.2.자원 자동 변환8. IOStream의 중첩9. throw 9.1. 파일 입출력 클래스-XXInputStream, XXReader: 읽기(입력)-XXOutputStre..
2024. 6. 17.
CP1_07.객체지향 프로그래밍_Advanced_2.오버라이딩
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, interface, 내부클래스2. 오버라이딩(Overriding)1. 오버라이딩2. 오버라이딩의 조건3. 오버로딩 vs 오버라이딩4. super 참조변수5. super()-상위 클래스의 생성자 호출하기 2.1 오버라이딩-상위 클래스로부터 받은 메서드가 있는 경우에만 가능-하위 클래스에서도 (하위 클래스에 맞게 변경하여) 똑같은 것을 다시 정의함 2.2 오버라이딩의 조건1)선언부가 같아야 함(이름, 매개변수, 리턴 타입) 2)접근제어자를 조상 클래스의 메서드보다 좁은 범위로 변경할 수 없음(to be continued...)..
2024. 6. 11.
CP1_07. 객체지향프로그래밍_Advanced_1. 계승
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, interface, 내부클래스1. 계승1. 계승의 정의2. 클래스 계승 관계와 인스턴스 객체 3. 클래스 간의 관계4. Object 클래스 1.1 계승(Inheritance)의 정의 '이미 있는 것을 그대로 활용해서 새로운 것 만들어내기'-계승(상속): 기존의 클래스를 재사용하여 새로운 클래스 작성 장점-코드의 추가 및 변경이 매우 용이-코드의 재사용성을 높이고 코드의 중복 제거 -> 프로그램 생산성과 유지보수에 기여 계승에 필요한 두 클래스-상위(super) 클래스 = 부모, 조상, 기반(c++용어)-하위(sub) 클래..
2024. 6. 11.
CP1_06. 객체지향프로그래밍_Advanced_6. 다형성
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, interface, 내부클래스6. 다형성(polymorphism)1. 참조변수와 인스턴스의 연결 -멤버 변수2. 참조변수와 인스턴스의 연결 -메서드3. 다형성4. 객체의 배열과 다형성5. 클래스 java.util.Vector와 다형성 6.1 참조변수와 인스턴스의 연결 -멤버변수-멤버변수가 중복정의(같은 이름의 변수 정의)된 경우,-참조변수의 타입에 따라 연결되는 멤버변수가 달라짐(참조변수타입에 영향 받지 않음)6.2 참조변수와 인스턴스의 연결 -메서드_모르것다-메서드가 중복정의 된 경우,-참조변수의 타입에 관계없이 항상 실..
2024. 6. 10.
CP1_08. 객체지향프로그래밍_Advanced_인터페이스
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, 인터페이스, 내부클래스8. 인터페이스(interface)1. 인터페이스2. 인터페이스의 작성3. 인터페이스의 상-하 관계4. 인터페이스의 구현5. 인터페이스를 이용한 다중 상속6. 인터페이스를 이용한 다형성7. 인터페이스의 장점8. 인터페이스의 이해9. 디폴트 메서드 7.1 인터페이스 '추상 클래스보다 더 추상적 구체적인 것이 거의 없음'-클래스, 특히 abstract 클래스와 유사-모든 멤버변수: 자동으로 public static final로 정의됨-모든 메서드: 구현 없이 선언만 있고 자동으로 public abstrac..
2024. 6. 10.
CP1_07. 객체지향프로그래밍_Advanced_추상클래스
1. Basics클래스, 객체, 변수, 메서드 // 생성자, 초기화2. Advanced상속, 오버라이딩 // package, import, modifiers, 다형성 // 추상클래스, interface, 내부클래스7. 추상클래스(abstract class)1. 추상클래스2. 추상메서드3. 추상클래스의 작성 7.1 추상클래스 '미완성 설계도'abstract class 클래스이름 {} 추상클래스의 특성-추상클래스로부터 인스턴스 생성 불가 *계승을 통해 하위클래스에 의해 인스턴스 생성-추상메서드(미완성 메서드)를 하나 이상 포함하고 있음-그 외 일반 클래스와 동일함(생성자, 멤버변수, 메서드 가질 수 있음)추상클래스를 쓰는 이유-새로운 클래스를 작성하는 데 바탕이 되는 상위클래스로서 의미가 있음Q. 왼쪽이 ..
2024. 6. 10.