전체 글 97

31. 자바의 예외 처리 방법-3(사용자 정의 예외)

사용자 정의 예외자바의 Exception 클래스를 상속받는 자식 클래스를 직접 정의 예시)class InvalidUserException extends Exception { InvalidUserException(String message) { super(message);// Exception 클래스의 getMessage()에서 사용 }}class CustomException extends Exception { CustomException(String message) { super(message); }}public class Exception03 { // 단일 예외 던지기(throws) // 메소드 선언부에서 해당 메소드가 발생시킬 수 있는 예외를 명시하는 키워드 static void login(St..

java 2025.03.05

29. 자바의 예외 처리 방법-1(try-catch)

try-catch 블록기본 형태try { 예외가 발생할 수 있는 코드 }catch('발생할 예외의 타입', '예외를 저장할 변수'){ 해당 예외 발생 시 실행할 코드 }catch('발생할 예외의 타입', '예외를 저장할 변수'){ 해당 예외 발생 시 실행할 코드 }catch 블록: 특정 예외 타입이 발생했을 때 실행될 코드를 정의>>다중 catch 블록으로 사용 가능(여러 예외 처리 가능) 예시)public static void main(String[] args) { // char c1 = 'abc'; 컴파일 예외 String s1 = "abc"; // System.out.println(a1); 컴파일 예외 // int division = 10 / 0; 런타임 예외 //Excep..

java 2025.03.05

28. 예외(Exception)

자바 예외 처리 예외(Exception)란?프로그램 실행 중에 발생할 수 있는 예기치 못한 문제나 조건 예외 처리란?예외가 발생할 경우 프로그램이 중단되지 않고 대응하여 정상적인 흐름을 유지하는 방법 자바 예외 클래스의 구조Throwable: 모든 예외와 오류의 최상위 클래스모든 예외 클래스는 해당 클래스를 상속받음ex) 예외와 관련된 메시지, 처리 방법에 대한 예시 정보... cf) 자바 클래스 타입의 최상위 클래스는 Object 자바의 예외와 오류Exception(예외) 클래스프로그램이 처리할 수 있는 예외들을 정의>>예외 처리를 통해 '개발자'가 해결할 수 있는 문제들을 정의예외가 발생하면 코드가 더 이상 실행되지 않음 Checked Exception컴파일 시점에 체크되는 예외(코드 작성 시)개발자..

java 2025.03.05

VSCode 개발환경설정

VSCode 다운로드https://code.visualstudio.com/ 폰트 사이즈 설정설정 > User > text Editer > font > Font Size: 18pt 테마 설정설정 > Theme > Color Theme: Sublime Material Theme(확장) > Sublime Material Theme(Dark) 들여쓰기 간격 설정tap size: 2로 변경word wrap: on>> 자동 줄 바꿈 기타 유용한 확장들Korean Language Pack:  에디터 한글화 Live Server: 새로고침 없이 코딩 중인 웹 업데이트 → 로컬 개발 서버를 쉽게 구동하여 실시간으로 변경 사항 확인 가능 Prettier - Code formatter: 코드를 formatting 해주는 툴..

frontend 2025.03.05

Git 활용하기

git 명령어 git init>>현재 디렉토리를 git에 연결 git status>>현재 디렉토리의 상태 확인 git add 파일명.확장자  // git add .>>현재 WD의 작업을 SA에 업로드 git commit -m "메시지">>현재 SA의 작업을 LD에 업로드, 커밋 메시지 업로드##메시지의 내용: 날짜, 작성자, 업로드 내용 설명 git push>>현재 LD의 작업을 RD에 업로드 git branch -M main>>현재 브랜치명을 강제로 main으로 변경 git remote add origin >>GitHub 리포지토리의 URL을 원격 저장소로 로컬에 저장 git pull origin main>>원격의 데이터를 로컬로 pull(당겨오기) git clone >>원격 리포지토리 전체를 폴더 단..

git 2025.03.05

실습) 추상 클래스 활용2

// 인터페이스// Fruit 과일 인터페이스 정의// color: 추상 메소드// describe: 디폴트 메소드// printType: 정적 메소드interface Fruit { // 추상메소드: public abstract 생략 // 추상클래스의 추상메소드와 다름 String color(); // 디폴트 메소드: 재정의 (오버라이드) 가능 default void describe() { System.out.println("과일의 색상은 " + color() + "이며 모양은 동그랗습니다"); } // 정적 메소드: 재정의(오버라이드) 불가능 static void printType() { System.out.println("과일(Fruit)의 타입입니다"); }}class Apple implem..

java 2025.02.27

실습) 추상 클래스 활용 1

// 추상 클래스// 모바일 어플리케이션abstract class MobileApp{ // 추상 메소드: 실행에 대한 동작 정의 // 각 앱마다 '고유한 실행' 정의 - 상속받은 클래스에서 구현 abstract void execute(); // 일반 (구현 메소드) void appInfo() { System.out.println("This is a mobile app"); }}// 게임 어플리케이션class GameApp extends MobileApp{ // 추상 메소드 구현 @Override void execute() { System.out.println("Game app executes"); }}// SNS 어플리케이션class SocialApp extends MobileApp{ String ..

java 2025.02.27

27. 인터페이스(Interface)

인터페이스란?객체가 어떤 방식으로 동작해야 하는지 정의하는 추상 타입추상 메소드와 상수로만 이루어진 특수한 클래스>> 모든 메소드는 추상 메소드여야 하며>> 모든 변수는 상수이고 public static final 특성을 가짐인터페이스의 구현은 인터페이스를 클래스에서 사용할 때 구현됨 인터페이스의 특징메소드: 모든 메소드는 public abstract로 선언>> 키워드 생략 가능(생략시 컴파일러가 자동으로 public abstract 취급) 변수(필드): 모든 변수는 public static final로 선언>> 키워드 생략 가능(생략시 컴파일러가 자동으로 public static final 취급) 다중 구현 지원한 클래스에서 여러 인터페이스를 동시에 구현 가능객체의 각 행동을 정의하는 역할 인터페이스 ..

java 2025.02.27

26. 추상화(Abstract)

추상 클래스란?미완성된 설계도(클래스)=> 이것만으론 인스턴스를 생성할 수 없음>> 다른 클래스가 상속받아서 추상화된 부분을 완성해야 사용 가능 추상 클래스의 특징클래스 자체만으로 인스턴스 생성 불가반드시 하나 이상의 추상 메소드를 포함해야 함확장성 제공을 위해 사용 >> 자식 클래스가 공통된 기능을 공유 + 고유 기능을 구현하도록 강제함다중 상속은 불가능 >> 하나의 extends만 가능 메소드 오버라이딩과 추상 메소드추상 메소드: 반드시 자식 클래스에서 오버라이딩 해야됨(필수)일반 메소드: 필요시 오버라이딩 함(선택) 추상 클래스 구현법클래스 선언시 앞에 abstract 키워드 사용 추상 메소드란?메소드의 선언부만 존재하고 구현부가 없는 메소드자식 클래스가 상속할 때 해당 메소드를 반드시 구현하도록 ..

java 2025.02.27

25. 다형성 (Polymorphism)

다형성이란?많은 형태를 가질 수 있는 특성하나의 객체가 여러 타입의 인스턴스(객체)로 취급될 수 있는 특성상속, 메소드 오버라이드, 클래스 타입 변환 instanceof 연산자참조변수값 instanceof 타입(클래스명)해당 객체가 특정 클래스의 인스턴스인지, 또는 그 클래스를 상속받은 자식 클래스의 인스턴스인지 확인하고그 결과를 boolean값으로 반환한다 예시)클래스를 만들고 상속// instanceof: 운송수단class Vehicle{ void displayInfo() { System.out.println("운송수단입니다"); }}class Bus extends Vehicle{ @Override void displayInfo() { System.out.println("버스를 타고 갑니다"); ..

java 2025.02.27