일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- #홍콩여행 #홍콩국가 #홍콩지도 #홍콩날씨
- 블로그 태그 #국비 #국비학원 #IT #개발자 #프로그래머 #신입 #코딩 #안드로이드 #자바 #JAVA #오라클 #Oracle #SQL #MYSQL #HTML #CSS #JAVASCRIPT #자바스크립트 #서블릿 #SERVLET #JSP #자바스프링 #데이터베이스 #
- Servlet #JSP #GET #POST #클라이언트
- #라이브러리 #개발자 #REACT #Bootstrap
- #홍콩 #홍콩여행 #홍콩한달살기 #홍콩집밥 #홍콩생활 #홍콩베이징구스 #홍콩산책 #홍콩조깅 #홍콩우편함
- #라이브러리 #개발자 #REACT #Bootstrap #REST API
- #홍콩 #홍콩한달살기 #홍콩버스 #버스어플 #홍콩음식 #홍콩여행 #kmb #lwb#홍
- #홍콩 #홍콩여행 #홍콩한달살기 #홍콩사이언스파크 #홍콩산책 #홍콩야경 #홍콩턱돌이
- #홍콩쌀국수 #탐차이
- JSP #액션태그 #
- 서블릿 #Servlet #Request #Response #개발자
- #홍콩 #홍콩여행 #홍콩한달살기 #옥토퍼스카드
- JSP #표현언어 #page #include #taglib
- #라이브러리
- #라이브러리 #개발자 #REACT #Bootstrap #REST API #웹 디자인 #디자인 툴
- #라이브러리 #개발자 #REACT #Bootstrap #Visual Studio
- #홍콩 #홍콩여애 #홍콩한달살기 #베트남식당 #viet'schoice #외식 #카레 #양지머리카레 #양지머리 #고기쌀국수 #육수존맛 #레몬차 #밀크티 #shatin #홍콩쇼핑 #asus노트북 #어댑터 #홍콩돼지코
- forward #include #param
- #홍콩2층버스
- 백엔드개념 #WAS
- #국비 #국비학원 #IT #개발자 #프로그래머 #신입 #코딩 #안드로이드 #자바 #JAVA #오라클 #Oracle #SQL #MYSQL #HTML #CSS #JAVASCRIPT #자바스크립트 #서블릿 #SERVLET #JSP #자바스프링 #데이터베이스 #프레임워크
- Today
- Total
기분좋음
국비 17 일차 본문
11강 예외
예외처리
컴파일 시 발생하는 에러
컴파일 과정에서 소스코드에 대한 오타나 잘못된 부분 확인
런타임 에러
실행중에 발생하는 에러
프로그램 실행중 동작 멈추거나 갑자기 프로그램 종료 되는 경우
런타임중 발생하는 에러 크게 두가지
1.에러
2.예외
에러
메모리 부족등, 일단 발생하면 복구 불가능 한 에러
예외
문제가 발생하더라도 프로그램 수정으로 수습 가능한 비교적 덜 심각한 에러
(프로그래머가 적절한 소스 수정으로 잡을 수 있다.)
NullPointException
객체 참조가 없는 상태, 참조변수로 값이 없는 상태에서 사용하려고 할 때
ArrayIndexOutOfBoundsException
배열에서 인덱스 범위를 초과한 상태
NumberFormatException
문자열로 되어있는 데이터를 숫자로 변경할 때(변환할수 없는 문자를 갖고있을 경우)
ClassCastException
타입변환 에러 (강제변환 안되는 상황일 때)
상위클래스와 하위 클래스간에 발생 구현클래스와 인터페이스 간에도 발생
이러한 관계가 아닐경우에 강제 변환시 발생
예외 처리 코드
try {
예외발생 가능 코드
}
catch(예외 클래스 e) {
예외처리
}
(finally)-항상 실행 (예외발생 노발생)
(예외 발생시에만 catch로 이동)
예외 처리란
예외 발생을 대비한 코드를 작성
직접처리: try~catch문
간접 처리: throw (메인 메서드에서 예외 발생시 딴곳으로 보냄)
하나의 try 문에 여러개 catch문 사용 가능하다.
여러가지 상황의 예외처리 대비하고, 우선발생한 catch문만 실행된다.
두가지 catch문 |(or)연산자로도 처리 가능함
직접처리 통째로 처리
모든 예외 부모 클래스인 Exception 클래스이다.
Exception catch문은 가장 밑에 넣어준다. (가장 위에 넣어줄 경우 에러 발생) -문법
간접 예외 처리
메소드 내부에 예외 발생시 내부에서 처리하지 않고 메소드를 호출한 위치로 예외를 떠넘김
해당 메소드에서 직접 처리한다. (호출한 곳에서 try catch문)
사용자 정의 예외
개발자가 직접 예외를 정의 할 수있다.
일반 예외 Excption클래스 상속
실행 예외 RuntimeErrorException클래스 상속
예외 발생 키워드는 throw
e.getMessage(); 저장된 문자열을 가져온다.
12강 유용한 API클래스
기본 패키지 java.lang.Object
패키지중 가장 기본되는 패키지 경로설정이나 Import 없이 사용가능
object 클래스는 모든 클래스들의 최고조상이다 직접 사용하기 보다 적절하게 오버라이딩해서 사용한다.
equals(Object obj) 두객체 같고 다름을 참조변수의 값(주소)로 판단한다. -내용비교
어떤 객체의 실제 내용물을 비교하고 싶을 때 오버라이딩 한다.
hashCode() 암호화된 코드 (키값 필요) 값의 주소 불러옴
대량의 데이터를 저장하고 검색하는데 유용
toString() 객체의 정보를 문자열로 제공할 목적으로 정의된 메소드
오버라이딩이 되지 않았다면 기본적으로 hashCode(값의 주소값)를 반환한다.
Clone() 자기 자신을 복제해서 새로운 인스턴스를 만드는 일을 한다.
Clonable인터페이스를 구현한 클래스의 인스턴스만 복제 가능하다. -a.clone();
getClass() 자신이 속한 클래스의 Class객체를 반환하는 메소드
Class객체는 클래스의 모든정보를 가지고 있고 클래스당 1개만 존재
java.lang.Wrapper
기본타입을 클래스로 정의한것
기본타입을 내장하고 있기 때문에 포장클래스이다.
기본타입을 Wrapper클래스로 감싸는 것을 박싱
Wrapper클래스를 기본타입으로 꺼내는것을 언박싱
박싱 하는 법
생성자를 통해서 박싱
Integer a = new Integer(100);
메소드를 통해서 박싱
Integer a = Integer.valueOf(100);
언박싱 하는법
기본타입명 + Value();
long b = new Long("100")
->long b1 = b.longValue();
Wrapper클래스 내부 데이터 비교는 비교연산자를 사용할 수없다. (숫자가 아니고 다른 형태라서)
내부 내용 비교를 위해 equals메소드를 사용해야한다.
java.lang.String
Stirng -클래스 문자열을 저장하기 위한 클래스
문자형 배열(char[])과 그에 관련한 메소드들이 정의되어있다.
String 클래스는 immutable의 성질을 가진다(인스턴스의 내용을 바꿀 수 없다.)
String 클래스는 내용이 없는 빈 char[]생성 가능 "";
그러나 char 는 공백을 의미하는 값이 입력되어야 한다.
toLowerCase() - 모두 소문자
toUpperCase() - 모두 대문자
trim() -문장간 공백 메워줌
getByte() -문자열을 바이트 배열로 변환
매개변수로 문자변환 인코딩 타입을 지정해줄수 있다.
바이트 배열을 String 인스턴스 생성시 매개변수로 넣으면 문자열로 재 생성
valueOf() -기본타입의 데이터를 문자열로 변환
concat(문자열) - 기본 문자열에 전달받을 문자열을 결합해서
유틸패키지 java.Util
JDK 설치시 여러가지 패키지들이 같이 설치된다.
기본 패키지가 아니므로 경로를 작성해주거나 import사용해야한다.
Date클래스는 날짜를 표현하기 위한 클래스
기본적으로 toString()메소드를 통해 기본적인 날짜를 문자열로 가져 올수 있지만
SimpleDateFormat을 이용해서 원하는 포맷으로 만들 수 있다.
SimpleDateFormat a = new SimpleDateFormat("yyyy년 MM월 dd일 hh시 mm분 ss초");
java.util.Calendar
참조변수.get()메소드에 적절한 매개변수를 전달함으로 날짜 관련 데이터를 얻어올 수 있다.