java
-
CHAPTER 8. (1) 예외처리란?java/ㄴ CHAPTER 8. 예외처리 2020. 4. 22. 20:42
에러 (오류) - 프로그램 실행 중 어떤 원인에 의해 오작동, 비정상적인 종료의 결과를 초래하는 원인 종류 ㄴ 컴파일 에러 : 컴파일 시 발생하는 에러 (개발환경에서 알려줌) ex.코드 입력 실수 ㄴ 런타임 에러 : 실행 시 발생하는 에러 (개발자의 실수) ex.무한루프 ㄴ 논리적 에러 : 실행은 되지만 의도와 다르게 동작 (개발자의 실수) Object ㄴ Throwable : 오류 정보 및 오류처리를 위한 디버깅 정보 출력, 오류 메시지 제공 하는 기능들 정의됨 - Error에러 : 프로그램 코드에 의해 수습될 수 없는 심각한 오류 (시스템, 운영체제, 자바 실행환경의 오동작) => 개발자의 영역 X , 예외처리 대상 X ex. 메모리 부족, 스택 오버플로우, (시스템, 운영체제, 자바 실행환경, JV..
-
10. oop12 - (1) Note Demo (익명 객체 사용)java/코드 리뷰 2020. 4. 3. 08:55
1 2 3 4 5 6 7 8 package oop12; public interface MouseClick { void handle(); } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 package oop12; /** * 익명 클래스 * @author HYB * */ public class GUI { public static void main(String[] args) { MouseClick c1 = new MouseClick() { public void handle() { System.out.println("새 창을 연다."); } }; MouseClick c2 = new MouseClick() { public void..
-
10. oop11 - (1) HTAListDemo (리스트 객체 반환)java/코드 리뷰 2020. 4. 3. 08:51
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 package oop11; public class HTAList { private String[] data = new String[100]; private int position = 0; public void add(String value) { data[position] = value; position++; } // 꺼내기 기능이 구현된 HTAIterator 타입의 HTAListIterator 객체 반환 public HTAIterator iterator() { HTAListIterator..
-
10. oop10 - (1) Outer Demo (내부 클래스)java/코드 리뷰 2020. 4. 3. 08:46
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package oop10; // 인스턴스 내부클래스 public class Outer1 { int x; static int y; void m1() { Inner1 i = new Inner1(); // 외부 클래스의 멤버 메서드에서 내부 클래스 사용 가능 } static void m2() { // Inner1 i = new Inner1(;) // 외부 클래스의 클래스 메서드에서 내부 클래스 사용 불가 } // 인스턴스 내부 클래스 class Inner1 { int a; // static int b; // 클래스 변수 선언 불가 void ..
-
10. oop9 - (1) TvDemo (인터페이스)java/코드 리뷰 2020. 4. 2. 20:41
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 package oop9; public class NormalTv { private Monitor monitor; // Monitor 타입의 객체를 담는 멤버변수 public NormalTv(Monitor monitor) { // 생성자 실행할 때 Monitor를 구현한 객체만을 전달받음 this.monitor = monitor; // NormalMonitor, HDMonitor, CinemaMonitor, LCDCinemaMoitor만을 전달받음 } public void watch() { // Monitor 인터페이스를 기준으로 프로그램을 작성 monitor.o..
-
10. oop8 - (2) PersonDemo ( super() )java/코드 리뷰 2020. 4. 2. 20:29
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 package oop8; public class Person { private String name; private String email; public Person () { // super();가 숨겨져있음. super() 는 부모 클래스의 기본 생성자를 실행시킴 // 모든 생성자 메서드에는 부모클래스의 기본 생성자를 실행시키는 super(); 수행문이 자동으로 추가됨 // 개발자가 다른 super(값, 값...) 메서드를 실행시키는 수행문을 추가하면 super(); 수행문이 추가되지 않음 } public Person (String name, String email) { this...
-
10. oop8 - (1) BookDemo (getter, setter 메서드)java/코드 리뷰 2020. 4. 2. 20:26
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 package oop8; public class Book { private String title; private String writer; private int price; public Book() { } // 멤버변수의 값 반환하는 getter 메서드 정의 public String getTitle() { return title; } public String getWriter() { return writer; } public int getPrice() { return price; } // 멤버변수의 값을 변..
-
10. oop7 - (2) ModifierDemo (다른 패키지, 접근 제한)java/코드 리뷰 2020. 4. 2. 20:25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package oop7; import oop7.sub.Modifier; public class ModifierChild extends Modifier { public void test() { // ModifierChild는 Modifier과 다른 패키지에 있지만 // 부모-자식 관계에 있기 때문에 protected, public 접근제한이 정의된 멤버에만 접근 가능 c = 10; d = 10; } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package oop7; import oop7.sub.Modifier; public class ModifierDemo { public static void main(String[]..