분류 전체보기502 [Java] chap9 : 예외처리 - Exception3(finally) finally 블럭 finally 블럭 - try 블럭에서 정상/예외 모두 실행 되는 블럭. - 메서드 중간에 return이 실행 되도 finally 블럭은 실행됨. 📌 package chap9; /* * [결과] * 1456 => 2/0 * 12356 => 2/1 * * 1235 => 정상 return * 145 => catch 블럭 return */ public class ExceptionEx3 { public static void main(String[] args) { try { System.out.print(1); System.out.print(2/0); //System.out.print(2/1); System.out.print(3); //return; //함수 종료 } catch(Exceptio.. 2023. 4. 15. [Java] chap9 : 예외처리 - Exception1(try, catch), Exception2(다중 catch 구문) try catch 구문 예외 처리 : 발생된 예외를 정상적으로 처리하는 방법 try catch 구문 try 블럭 : 예외 발생 가능성이 있는 문장을 가진 블럭 catch 블럭 : catch블럭이 속한 try블럭에서 예외 발생시 실행 되는 블럭 📌 package chap9; /* * [결과] * 145 * 1235 */ public class ExceptionEx1 { public static void main(String[] args) { try { System.out.print(1); // System.out.print(2/0); //ArithmeticException 발생 System.out.print(2); System.out.print(3); } catch(Exception e) { System... 2023. 4. 15. [Java] chap8 : 인터페이스 - Exam1 📌 Interface Exam1 package chap8; /* * Animal 클래스는 다음과 같다. 구동 클래스를 실행했을때 다음의 결과나 * 나오도록 프로그램 구현하기 * [결과] * 비둘기는 작은 벌레를 잡아 먹는다. * 비둘기는 날아 다니는 새입니다. * 원숭이는 나무에서 열매를 따서 먹는다 * 독수리는 작은 새를 잡아 먹는다. * 독수리는 엄청 높이 날아 다닌다. */ abstract class Animal { String name; Animal(String name) { this.name = name; } abstract void eat(); } class Dove extends Animal implements Flyable{ Dove(){ super("비둘기"); } void eat() {.. 2023. 4. 15. [Java] chap8 : 인터페이스 - Interface(복합예제) Interface(복합예제) jdk8 버전 이후에 인터페이스에서 구현부가 있는 메서드가 가능함 default 메서드 : 객체를 생성할때 인스턴스 메서드. static 메서드 : 클래스 메서드. 📌 package chap8; interface MyInterface1{ void method(); default void method1() { //default 메서드. 구현부 존제 System.out.println("MyInterface1의 default 메서드 : method()"); } static void staticMethod() { //static 메서드. 구현부 존재 System.out.println("MyInterface1의 static 메서드 : staticmethod()"); } } interf.. 2023. 4. 15. [Java] chap8 : 인터페이스 - Interface, 리턴타입이 인터페이스인 경우, 인터페이스의 객체화 Interface 인터페이스 1. 인터페이스의 멤버는 상수, 추상메서드, default 메서드, static 메서드만 가능함. 생성자를 만들 수 없다. 2. 인터페이스의 모든 멤버의 접근제한자는 public임 3. 직접 객체화는 불가 => 구현클래스의 객체화를 통해서 객체화 됨. 4. 인터페이스간의 상속은 다중 상속이 가능 클래스간의 상속은 단일 상속임.(나의 부모클래스가 한개면 단일 상속) 5. 클래스와 인터페이스의 관계는 구현(implements)으로 표현함 => 다중구현이 가능함. 6. 구현클래스의 객체는 구현된 인터페이스의 형으로 형변환이 가능함. 📌 package chap8; interface Printerable{//Printerable : 상수와 추상메서드로만 이루어졌다 //public st.. 2023. 4. 15. [Java] chap7 : 클래스의 관계 - Final 제한자, Final 메서드, Final 클래스 Final 제한자 final 제한자 : 변경 불가의 의미. final(종단) 클래스 : 상속불가 클래스. 다른 클래스의 부모클래스가 될 수 없다. final(종단) 메서드 : 오버라이딩 불가 메서드. final 변수(상수) : 변경 불가 변수.(설정된 값을 변경 할 수 없다.) 상수(const 사용안함) final 멤버 변수는 생성자에서 한번 값을 설정 할 수 있다. => 명시적 초기화 안된 경우만 가능 => 객체별로 다른 상수값을 가질 수 있다. final, abstract는 반대의 의미를 가진다. 📌 package chap7; class FinalVlaue { final int NUM;// 처음 값을 선언할때 값을 넣어주면 상관이 없으나 값을 넣지 않은채 인경우 생성자에서 값을 한번은 변경 가능하다... 2023. 4. 15. [Java] chap7 : 클래스의 관계 - 다형성 Exam1 📌 다형성 Exam1 package chap7; /* * 다형성 예제 * Buyer가 전자제품 구매하기 * * Product 클래스 * 멤버변수 : 가격(price), 포인트(point) * 생성자 : 가격을 입력받고, 가격의 10%를 포인트로 저장. * Tv 클래스 : Product의 하위클래스 * 가격(price)을 100 설정하기 * toString() 메서드에서 Tv를 리턴. * Computer 클래스 : Product의 하위클래스 * 가격(price)을 200 설정하기 * toString() 메서드에서 Computer를 리턴. * SmartPhone2 클래스 : Product의 하위클래스 * 가격(price)을 150 설정하기 * toString() 메서드에서 SmartPhone를 리턴. */ .. 2023. 4. 15. [Java] chap7 : 클래스의 관계 - 상속2 상속 - 부모클래스의 멤버와 자손클래스의 멤버가 같은 경우(조건) 멤버 변수 : 참조변수의 자료형을 따른다. 멤버 메서드 : 객체에 최종 오버라이딩된 메서드가 호출된다. - 부모클래스의 멤버와 자손클래스의 멤버가 다른 경우(조건) 멤버 변수 : 부모클래스의 참조 변수로 참조시 부모클래스의 멤버만 접근 가능 자손클래스의 참조변수로 참조시 부모클래스의 멤버도 접근 가능 == 객체와 참조변수의 관계 === - 부모클래스의 객체는 자손클래스의 참조변수로 참조 할 수 없다. (why? 부모클래스 안에 자손클래스를 가지고 있지 않으므로) - 자손클래스의 객체는 부모클래스의 참조변수로 참조 할 수 있다. (자손클래스는 부모클래스의 참조변수를 포함하고 있으므로) - 참조변수와 객체의 자료형이 틀린경우는 ClassCas.. 2023. 4. 15. 이전 1 ··· 50 51 52 53 54 55 56 ··· 63 다음