try-catch문 예외를 잡아줄 때 사용한다 자바에서는 예외를 클래스를 통해 관리한다 Object 안에 Throwable 안에 Exception 안에 각종 예외이름들... try{ 예외가 발생할 수 있는 코드; }catch(예외이름1 예외객체){ 예외이름1이 발생했을 때 실행되는 영역; }catch(예외이름2 예외객체){ 예외이름2이 발생했을 때 실행되는 영역; }catch(Exception e){ 모든 오류들은 Exception에 상속되어 있음. Exception으로 모든 오류를 잡아줄 수 있다 }...{ }finally{ 개발자가 놓친 예외, 오류가 있어도 무조건 한 번 실행되는 영역; } getMessage() : 오류 발생 시 부연설명 부분을 문자열로 return하는 메소드 printStackT..
String 클래스 : 문자열과 관련된 다양한 메소드를 사용할 수 있다 치트시트(컨닝페이퍼) length() : 문자열의 길이를 return 한다 charAt() : 해당 문자열의 인덱스에 해당하는 char가 return 된다 indexOf() : 해당 문자열 속 문자의 인덱스 번호를 return 한다 값이 없을 경우 -1이 return substring() : 해당 문자열을 자른 문자열을 return 한다 split() : 해당 문자열을 쪼개어 문자열들이 들어있는 배열을 return 한다 join() : 배열 속 문자열 요소들을 연결한 하나의 문자열을 return 한다
익명클래스는 앞에 있는 클래스를 상속받아서 만들어진 것을 앞에 클래스로 업캐스팅해서 사용하는 것! 업캐스팅할 수 밖에 없는 이유: 업캐스팅 안하려면 타입을 써줘야하는데, 무슨 타입인지 클래스 이름이 없어서 무조건 부모타입을 써줄 수 밖에 없음. 업캐스팅 하기 싫으면 익명클래스를 안 쓰면 됨. 익명클래스를 쓰는 이유 : 일회적으로 사용하기 위해 익명클래스가 자주 쓰이는 곳 : 반드시 오버라이딩을 해서 써야 하는 경우, 추상메소드 *요약정리* 클래스나 인터페이스를 상속받은 이름없는 클래스를 업캐스팅하여 사용하는 것으로 해석한다 따라서 새로운 멤버를 넣는 것은 무의미하다 오버라이딩하여 사용을 많이 하며, 일회성으로 사용하기 위해서 익명클래스를 활용한다
인터페이스 interface 작업의 틀 >> 추상메소드만 존재하는 추상클래스 추상클래스이기 때문에 인터페이스도 객체화x 상속할 때 : 클래스 자식클래스 extends 부모클래스{} 인터페이스 자식클래스 implements 부모클래스{} 자식클래스 implements 부모클래스, 부모클래스1, 2,....{} 여러 개를 동시에 상속받을 수 있다 자바는 원칙적으로 모호성이 발생할 수 있기 때문에 다중상속을 허용하지 않는다 그러나 인터페이스 문법이 추가되며 사실상 다중 상속을 허용하고 있다 인터페이스에서는 static final 변수; 추상메소드(); >>abstract를 생략해도 컴퓨터가 추상메소드라고 인식함. 인터페이스이기 때문에 사용가능하다 **static final 변수 static 변수는 모든 인스턴..
추상클래스 abstract class 추상메소드를 갖고 있는 클래스 추상메소드가 하나라도 있으면 추상클래스! 추상메소드 abstract method 메소드의 이름과 리턴타입만 선언되어있고, 기능은 정의되어 있지 않은 메소드 추상메소드는 중괄호가 없음 추상클래스를 상속받은 자식에게 오류가 나지 않게 해결하는 방법 1.추상메소드를 오버라이딩한다 2.자식도 추상클래스로 만든다 추상클래스는 메모리상에 미구현된 멤버가 존재하기 때문에 객체화가 불가능하다