본문 바로가기

자바

(4)
예외처리 출처 : '이것이 자바다' 컴퓨터 하드웨어의 고장으로 인해 응용프로그램 실행 오류가 발생하는 것을 자바에서는 "에러"라고 한다. 개발자가 어떤 노력을 해도 이를 해결할 방법은 없다. 자바에서는 에러 이외에 "예외"라고 부르는 오류가 있다. 의도하지 않은 대로 프로그램을 쓰다가 뻗는 경우를 의미한다. 하지만 예외처리를 해준다면 에러와 다르게 프로그램을 계속 실행하는 상태로 유지하는게 가능하다. 예외에는 두가지가 존재한다. 1.일반 예외(Exception : 컴파일러가 예외 처리 코드 여부를 검사하는 예외다.) -> IDE를 사용해서 코드를 실행하기 전에 밑에 빨간줄이 끄이면서 왜 오류가 뜨는지 나타나는 경우다. 몰랐는데 이것도 예외 클래스에서 해주는 거였구나.. 2.실행 예외(Runtime Exceptio..
추상화란 추상클래스란 추상화란? 핵심적인 개념 또는 기능을 간추려 내는것을 의미한다. 추상화의 종류 -반복되는 내용을 for문이나 while 문으로 추리는 것도 추상화의 한 내용이라고 한다. -인터페이스 -상속 -추상클래스 추상화의 장점 -일단 데이터를 추상화 하고 나면 여기저기서 다시 추상화했던 데이터를 사용할 수 있기 때문에 좋다. 추상클래스란? -하나 이상의 추상클래스를 가지는 클래스를 추상 클래스라고 부른다. 추상클래스는 OOP타입의 클래스이고, 추상클래스는 하나 이상의 추상 메소드를 선언한다. 추상클래스는 concrete메소드와 마찬가지로 추상 메소드를 가질 수 있다. 일반 클래스는 추상메소드를 가질 수 없다. 추상 클래스는 적어도 하나 이상의 추상메소드를 가질 수 있다. 추상메소드란? -추상메소드란 정의는 되어있지..
객체지향의 4대 특징 1.추상화 추상화란 핵심적으로 중요한 내용과 그렇지 않은 내용을 가려내는 것을 의미한다. 실생활에서 추상화를 설명할때 초기 지하철 지도를 예로 들면서 설명을 한다. 아래의 사진은 세계 최초의 지하철 지도다. 보고 바로 이해가 잘 안된다. 가독성이 떨어지고 불필요한 정보가 많다. 어떤 것이 불필요한 정보인지 일일이 설명하지는 않겠다. 여하튼 '추상화' 의 과정을 거치면 우리가 아는 오늘날의 원형에 가까운 지하철 지도가 등장한다. 훨씬 보기 편해진다. 개발에서 추상화는 공통적인 내용을 가려내는 것을 의미한다. 부모클래스를 둬서 자식클래스에서 중복되지 않는 메소드나 필드를 설정하는 것도 추상화중 하나다. 추상 클래스나 인터페이스를 사용해서 추상메소드를 사용하게끔 만드는 것도 추상화의 한갈래이다. 중복되는 내용..
리스코프 치환원칙 리스코프 치환 원칙(Liskov subsititon Principle) public class Dog extends Animal{ @Override public void speak() { System.out.println("멍멍!!"); } } 정의 자식 클래스는 최소한 자신의 부모 클래스에서 가능한 행위는 수행이 보장되야 한다. 다르게 말해서는.. 다형성의 특징을 이용하기 위해 상위 클래스 타입으로 객체를 선언하여 하위 클래스의 인스턴스를 받으면, 업캐시팅된 상태에서 부모 메소드를 사용해도 동작이 의도대로만 흘러가도록 구성해야 한다는 것이다. 자바에서 개발하다보면 아래와 같은 코드를 매우 많이 봤을 것이다. List tmp = new ArrayList(); List 는 인터페이스이고 ArrayList는..