본문 바로가기

Java28

[JSP] 내장 객체_1 내장 객체(implicit object)JSP 페이지에서 사용할 수 있도록 JSP컨테이너에 미리 정의된 객체로 JSP 페이지가 서블릿 프로그램으로 번역될 때 JSP 컨테이너가 자동으로 내장 객체를 멤버 변수, 메소드 매개변수 등의 각종 참조 변수(객체)로 포함함.JSP 페이지에 별도의 import문 없이 자유롭게 사용할 수 있으며, 스크립틀릿 태그나 표현문 태그에 선언을 하거나 객체를 생성하지 않고도 직접 호출하여 사용할 수 있음. 내장 객체의 종류 내장 객체 반환 유형 설명 requestjavax.servlet.http.HttpServletRequest웹 브라우저의 HTTP 요청 정보를 저장responsejavax.servlet.http.HttpServletResponse웹 브라우저의 HTTP 요청.. 2025. 12. 3.
[Java] 예외 처리 예외 처리 코드 try-catch-finally 블록생성자 내부와 메소드 내부에서 작성되어 일반 예외와 실행 예외가 발생할 경우 예외 처리를 할 수 있도록 해줌.// 일반 예외 처리package sec02.exam01;public class TryCatchFinallyExample { public static void main(String[] args) { try { Class clazz = Class.forName("java.lang.String2"); } catch(ClassNotFoundException e) { System.out.println("클래스가 존재하지 않습니다."); } }}1. try 블록에는 예외 발생 가능 코드가 위.. 2025. 11. 15.
[Java] 예외 클래스 예외(exception)사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류를 말하며, 예외가 발생되면 프로그램은 곧바로 종료된다는 점에서는 에러와 비슷하지만 예외는 예외 처리(exception handling)를 통해 프로그램을 종료하지 않고 정상 실행 상태가 유지되도록 할 수 있음. 일반 예외(exception)컴파일러 체크 예외라도고 하는데, 프로그램 실행 시 예외가 발생할 가능성이 높기 때문에 자바 소스를 컴파일하는 과정에서 해당 예외 처리 코드가 있는지 검사하고, 만약 예외 처리 코드가 없다면 컴파일 오류가 발생함. 실행 예외(runtime exception)컴파일러 넌 체크 예외라고도 하는데, 실행 시 예측할 수 없이 갑자기 발생하기 때문에 컴파일하는 과정에서 예외 .. 2025. 11. 15.
[Java] 익명 객체 익명 객체(anonymous)이름이 없는 객체를 말하며, 익명 객체를 만들려면 어떤 클래스를 상속하거나 인터페이스를 구현해야만 함.// 상속class 클래스이름1 extends 부모클래스 {...}부모클래스 변수 = new 클래스이름1();// 구현class 클래스이름2 implements 인터페이스 {...}인터페이스 변수 = new 클래스이름2();* 이 경우 부모 클래스 변수는 클래스이름1의 객체를 참조하고, 인터페이스 변수는 클래스이름2의 객체를 참조. // 상속부모클래스 변수 = new 부모클래스() {...};// 구현인터페이스 변수 = new 인터페이스() {...};* 이 경우 부모 클래스 변수는 이름이 없는 자식 객체를 참조하고, 인터페이스 변수는 이름이 없는 구현 객체를 참조.익명 자식.. 2025. 11. 15.
[Java] 중첩 클래스와 중첩 인터페이스 중첩 클래스(nested class)클래스 내부에 선언한 클래스를 말하며, 중첩 클래스를 사용하면 두 클래스의 멤버들을 서로 쉽게 접근할 수 있고, 외부에는 불필요한 관계 클래스를 감춤으로써 코드의 복잡성을 줄일 수 있다는 장점이 있음.선언 위치에 따른 분류선언 위치설명멤버 클래스인스턴스멤버 클래스class A { class B { ... }}A 객체를 생성해야만 사용할 수 있는 B 클래스정적멤버 클래스class A { static class B { ... }}A 클래스로 바로 접근할 수 있는 B 클래스로컬 클래스class A { void method() { class B { ... } }}method( )가 실행할 때만 사용할 수 있는 B 클래스클래스의 멤버로서 선언되는 중.. 2025. 11. 15.
[Java] 타입 변환과 다형성 다형성상속은 같은 종류의 하위 클래스를 만드는 기술이고, 인터페이스는 사용 방법이 동일한 클래스를 만드는 기술이라는 개념상의 차이는 있지만 둘 다 다형성을 구현하는 방법은 비슷한, 모두 재정의와 타입 변환 기능을 제공하기 때문. 자동 타입 변환(promotion)구현 객체가 인터페이스 타입으로 변환되는 것으로, 자동 타입 변환은 프로그램 실행 도중에 자동적으로 타입 변환이 일어나는 것을 말함.인터페이스 구현 클래스를 상속해서 자식 클래스를 만들었다면 자식 객체 역시 인터페이스 타입으로 자동 타입 변환할 수 있음.자동 타입 변환을 이용하면 필드의 다형성과 매개 변수의 다형성을 구현할 수 있는데, 필드와 매개 변수의 타입을 인터페이스로 선언하면 다양한 구형 객체를 대입해서 실행 결과를 다양하게 만들 수 있음.. 2025. 11. 14.