본문 바로가기

전체 글81

[JAVA] 예외 처리: 다중 catch문, 사용 시 주의할 점 다중 catch문정의한 번에 여러 가지 예외를 처리하기 위해서 2개 이상의 catch블록을 사용할 수 있음try 블록 다음에 2개 이상의 catch 블록을 사용함 다중 catch문 실행 순서실행 중에 예외가 발생하면, 다중 catch문은 순서대로 예외를 검사함하나의 try 블록에서 예외가 발생하면, 그 예외와 관련이 있는 catch 블록을 찾아서 실행함이때 상위의 예외 클래스 매개변수의 타입에 업캐스팅이 적용될 수 있음[ 사용 시 주의할 점 ]다중 catch문을 구현 할 때에, 상위의 예외 클래스 타입(Exception) catch문을 가장 뒤에 위치 시켜야 함[ 이유 ]하위 클래스 타입이 상위의 예외 클래스 타입(Exception)으로 업캐스팅이 가능하므로, 업캐스팅으로 인해.. 2024. 4. 24.
[JAVA] 에러와 예외, 예외의 종류 에러(Error)자바 프로그램 실행 시에 의도하지 않게 발생하는 문제점자바 에러의 종류1. 에러프로그램의 중요한 기능의 수행을 불가능하게 하는 에러에러를 해결한 후에, 프로그램을 재실행해야 함 2. 예외에러보다 가벼운 문제프로그램 자체적으로 문제 해결이 가능   예외의 종류[ 컴파일러 시에 검사 가능 여부에 따른 예외의 분류 ]1. 일반 예외2. 실행 예외  1. 일반 예외자바 소스를 컴파일하는 과정에서 예외 처리 코드가 필요한지 검사를 함따라서, 자바 코드 작성 시에 반드시 예외처리 해주어야 함만약에 예외 처리 코드가 없다면 컴파일 오류가 발생일반 예외설명ClassNotFoundtmfpem Exception객체 생성 시에 해.. 2024. 4. 24.
[JAVA] 예외처리: try-catch문, finally문 에러(Error)자바 프로그램 실행 시에 의도하지 않게 발생하는 문제점[ 자바 에러의 종류 ]1. 에러  - 프로그램의 중요한 기능의 수행을 불가능하게 하는 에러  - 에러를 해결한 후, 프로그램을 재실행해야 함2. 예외  - 에러보다 가벼운 문제  - 프로그램 자체적으로 문제 해결이 가능  예외 처리를 한다는 것자바 프로그램 실행 중에 예외가 발생하더라도, 비정상 종료되는 것을 방지함  예외를 처리하지 않고 실행하는 경우public class Test { public static void main(String[] args) { int [] numbers = new int[2]; numbers[0] = 0; numbe.. 2024. 4. 24.
[JAVA] enum(열거 타입, 사용하기, 사용하는 이유) Enum(Enumeration)- 열거형- 값들의 집합을 이루는 자료형 enum(열거 타입)정의서로 연관된 상수들의 집합상수만을 다루는 enum 타입의 클래스를 만든 것상수를 단순하게 정수로 취급하지 말고, 클래스로 객체화하여 관리하자는 취지 enum을 사용하는 이유허용 가능한 값을 제한수정 시 변경 범위가 최소화(enum만 수정하면 됨)컴파일 시 데이터 타입 및 유효성을 체크할 수 있음코드가 단순해지고 가독성이 좋아짐인스턴스의 생성과 상속을 방지하여 상수값의 안전성이 보장/* 상수를 여러개 쓰기 불편 public static final String SUN = "SUN" public static final String MON = "MON" public stat.. 2024. 4. 24.
[JAVA] Object.equals()와 String.equals(), ==연산자 [ object 클래스]정의- 자바 클래스들의 최상위 클래스(root class)특징1. object 클래스의 멤버는, 모든 클래스에서 사용 가능2. 명시적으로 구현하지 않으면, 컴파일 시에 클래스가 자동으로 상속 받음public class Student extends Object { }// Object 명시적으로 상속하지 않으면, 컴파일시 자동 추가 }​3. object 타입의 참조변수는, 모든 클래스의 객체를 업캐스팅으로 받을 수 있음   Object class의 equals() 메서드정의같은 객체인지를 확인할 때 사용하는 메서드즉, 객체의 위치값(주소값)을 비교하여 동일한 객체인지를 판별함 예제class Coffee { private String name; .. 2024. 4. 24.
[JAVA] StringBuffer클래스, StringBuilder클래스 StringBuffer클래스정의StringBuffer 클래스의 문자열은 기존의 문자열을 변경하면새로운 문자열이 생성되는 것이 아니라기존의 문자열만 변경 사용하는 경우기존의 문자열을 변경하는 상황이 많은 경우에 사용(예) 안드로이드와 같은 메모리 자원이 부족한 모바일 환경에서, 문자열을 자주 변경하는 경우에 사용 append() 메서드append() : 문자열을 뒤에 추가함String 클래스와 달리 append() 메서드를 이용하여, 기존 문자열을 수정할 수 있음 특징멀티 스레드 동기화 기능이 제공     StringBuilder 클래스정의StringBuffer 클래스의 문자열은 기존의 문자열을 변경하면새로운 문자열이 생성되는 것.. 2024. 4. 24.