중첩클래스 복습
멤버변수 = 클래스에 선언
지역변수= 생성자나 메서드에 선언
람다 함수의 this.iv -> this는 지역변수를 가져올수가없어 함수안에 계속 메소드가 실행되니까 지역변수만있지
그래서 외부 클래스의 멤버변수를 가져오는거야
반면에 위에 녹색부분은 클래스잖아 그니까 iv=100이 멤버변수지 그니까 this가 가져올 수 있는 거야
Enum
이런게 있구나 알고만 넘어가~ 자주쓰진 않음
예외처리
발생된 예외를 정상화 하는 기능
try catch finally throws -> 예외처리
throw -> 예외 발생
try 블럭 : 예외 발생 가능성이 있는 문장들의 모임. 예외 발생시 catch 블럭을 실행 catch 블럭 : try 블럭에서 예외 발생시 실행되는 영역 반드시 try 구문과 함께 사용해야 함. ![]() -> 오류발생하면 바로 catch로 넘어가기때문에 "프로그램종료"는 출력되지 않음 |
다중 catch 구문 -한개의 try 블럭에 여러개의 catch 블럭이 존재함 ->try 블럭에서 발생가능한 예외 종류에 따라 다른 예외처리 가능 ![]() |
Throwable > Exception > RuntimeException > ArithmeticException
NumberFormatException...
IOException
SQLException
....
자바에서는 예외처리 필수. 단 RuntimeException은 예외처리 생략 가능
RuntimeException클래스의 하위클래스도 RuntimeExcepion
finally
![]() |
![]() ![]() |
throw 예외 발생, 없는 예외 강제 발생 throw new Exception("예외 강제 발생"); ![]() |
오버라이딩에서의 예외처리
부모클래스 메서드의 예외처리보다 자손클래스 메서드의 예외처리는 같거나 작은 범위만 가능함
오버라이딩에서의 예외처리 부모클래스 메서드의 예외처리보다 자손클래스 메서드의 예외처리는 같거나 작은 범위만 가능함 ![]() |
사용자 예외 클래스 구현하기 Exception 클래스 상속 : 예외처리가 필수인 예외 클래스 생성 RuntimeException 클래스 상속 : 예외처리 생략 가능한 예외 클래스 생성 ![]() ->아이디 또는 비밀번호가 틀립니다. |
Object 클래스의 Equals 메소드
boolean equals 라는 오버라이드한 메소드가있어 이건이제 e1 e2 다 갖고있겠지?
e1 메소드에 e2값을 넣고 돌릴꺼야
만약 obj가 참조하고 있는 객체가 Equal 클래스가 소속돼있으면
e라는 참조변수에 equal클래스로 형변환한 obj값을 넣어 그다음 e1 == e2를 true인지 false인지 리턴해 라는 코드임
형변환 이유 : obj 변수 자체는 Object 클래스의 형태이므로, Equal 클래스의 value 필드에 접근할 수 없습니다.
Object 클래스의 toString 메서드
toString: 객체의 문자열로 변환해주는 메서드
참조변수이름으로 출력하면, 자동호출되는 메서드
기본 Object 클래스에서는 클래스명@16진수 해시코드로 구현함
->내용을 출력하기 위해서는 오버라이딩을 해야함
소감: 아직 객체지향쪽 개념이 덜잡힌듯.. 이쪽부터 확실히...!
Test1106_4 람다관련문제 다시 풀어보기
국비지원IT개발자취업 김명신강사님 구디아카데미 후기