본문 바로가기

구디 아카데미 수료 과정/JAVA

구디아카데미 후기/클라우드 활용 자바개발자 양성과정/•12일차 /국비지원IT개발자 취업 / 김명신 강사님/11.07

중첩클래스 복습

 

멤버변수 = 클래스에 선언
지역변수= 생성자나 메서드에 선언

람다 함수의 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개발자취업 김명신강사님 구디아카데미 후기