본문 바로가기

전체 글

[Java] 예외 처리 목차예외처리가 필요한 이유예외처리예외 기본 규칙체크 예외 vs 언체크 예외(런타임 예외)체크 예외 처리언체크 예외 처리finally 블록 예외처리가 필요한 이유프로그램이 비정상 종료되는 것을 방지한다.사용자에게 친절한 오류 메시지를 제공한다.자원 낭비를 방지한다. (열린 파일, 네트워크 연결 등)오류 추적 용이하다. (로그 기록) 예외처리프로그램 실행 중에 발생하는 오류 상황을 예외(Exception) 처리하기 위한 방법이다. 키워드키워드설명try예외가 발생할 수 있는 코드를 작성하는 블록이다.catch예외를 잡아서 처리하는 블록이다.finally예외 발생 여부와 관계없이 실행하는 블록이다.throw새로운 예외를 발생시킨다.throws발생시킨 예외를 메서드 밖으로 던진다. 예외 계층 그림Throw.. 더보기
[Javascript] 자식 요소 개수 구하기 목차1. childElementCount2. children.length3. 두 속성의 차이점 1. childElementCount특정 요소의 직속 자식 요소의 수를 반환한다. 사용 방법은 다음과 같다.const parent = document.getElementById("parent");console.log(parent.childElementCount); 사용 예제 안녕하세요. ⚠️ 주의 :1. 직속 자식의 수를 구하는 것이므로, 요소의 갯수는 포함되지 않는다. parent의 직속 자식인 child만 카운팅된다.2. 텍스트 노드(안녕하세요.)와 주석은 카운팅되지 않는다. 2. children.leng.. 더보기
[Java] Lv_3 계산기 문제 요구 사항⬜ 현재 사칙연산 계산기는 (➕,➖,✖️,➗) 이렇게 총 4가지 연산 타입으로 구성되어 있습니다.⬜ Enum 타입을 활용하여 연산자 타입에 대한 정보를 관리하고 이를 사칙연산 계산기 ArithmeticCalculator 클래스에 활용 해봅니다. ⬜ 실수, 즉 double 타입의 값을 전달 받아도 연산이 수행하도록 만들기⬜ 키워드 : 제네릭⬜ 단순히, 기존의 Int 타입을 double 타입으로 바꾸는 게 아닌 점에 주의하세요!⬜ 지금까지는 ArithmeticCalculator, 즉 사칙연산 계산기는 양의 정수(0 포함)를 매개변수로 전달받아 연산을 수행⬜ 피연산자를 여러 타입으로 받을 수 있도록 기능을 확장⬜ ArithmeticCalculator 클래스의 연산 메서드(calculate)⬜ .. 더보기
[Javascript] JS 이벤트 시스템, 어떻게 작동할까? 개요Javascript는 사용자와의 상호작용을 감지하고 반응하기 위해 이벤트(Event)를 사용한다. 우리가 클릭을 하거나, 키보드를 누르거나, 스크롤을 내리는 모든 동작은 브라우저에서 "이벤트"로 감지되고, 자바스크립트가 이를 처리한다. 목차1. 이벤트란 무엇인가? 정의와 예시브라우저와 자바스크립트의 역할2. 이벤트 리스너(Event Listner)의 등록 방식 addEventListener vs HTML 속성(onclick 등)이벤트 제거 방법3. 이벤트 흐름(Event Flow) 캡처링(Capturing) → 타깃(Target) → 버블링(Bubbling)useCapture 옵션의 의미4. 이벤트 객체(Event Object)주요 속성: target, currentTarget, type, pr.. 더보기
[Javascript] DOM(The Document Object Model) 개요브라우저에는 웹 문서를 해석할 수 있는 랜더링 엔진이 있다. 랜더링 엔진은 HTML 파일을 할 줄 한 줄 해석한다. 해석이 완료되면 웹 문서를 객체화(Document Object Model)하여 자바스크립트에서 접근할 수 있게 해준다. 문서를 객체화(DOM)한다는게 무엇일까? DOMDOM은 두 가지 의미가 있다. 하나는 HTML 문서의 트리 구조(실체)이고 다른 하나는 그 구조를 만들고 조작하는 데 필요한 API와 규칙을 정의한 표준 명세(설계도)가 있다. 혼동하지 않도록 한다. DOM 구조(실체)문서 객체 모델(Document Object Model, 이하 DOM)이라고 한다.DOM은 HTML 코드를 자바스크립트가 다룰 수 있게 객체화 한 것이다.Tree 구조를 갖는다. (DOM Tree)예.. 더보기
[Java] 다이아몬드 상속 개요클래스는 단 하나의 클래스만 상속받을 수 있다. 왜 그럴까? 그 이유는 바로 다이아몬드 상속 때문이다. 다이아몬드 상속객체지향 프로그래밍(OOP)에서 다중 상속을 사용할 때 발생할 수 있는 모호성 문제(ambiguity problem)를 설명하는 용어이다. 다음 클래스 다이어 그램을 통해 설명하였다.Car와 Airplane Class가 각각 Vehicle을 상속받는다.FlyCar는 Car와 AirPlane Class를 상속받는다.이렇게 되면 FlyCar는 Vehicle의 move() 메서드를 두 번 상속받게 될 가능성이 있고, 이로 인해 모호성(ambiguity)이나 중복된 맴버의 문제가 발생한다. 어떤 모호성인가?FlyCar 객체에서 Vehicle의 move() 메서드를 호출하면, FlyCa.. 더보기
프론트엔드(Front-End)와 백엔드(Back-End)는 뭐가 다를까? 프론트 엔드(Front-End)사용자가 직접 보는 화면을 담당하는 부분으로, 사용자와 상호작용하는 인터페이스를 개발하는 분야이다.보통 사용자의 브라우저나 앱 화면에서 실행된다. 사용하는 기술HTML : 구조CSS : 디자인JavaScript : 동작/기능FrameWork/Library : React, Vue, Angular 등이 있다.구현 및 목표구현 : 시작적 요소, UI목표 : 사용자 경험을 향상시키는 것이다. 백엔드 (Back-End)사용자가 직접 보지 못하는 부분으로, 사용자의 행동을 처리하고, 정보를 저장, 관리, 전달하며, 서버와 데이터베이스를 구현 및 관리하는 분야이다.프론트 엔드에서 요청을 받으면, 백엔드에서 처리하여 응답을 돌려준다. 사용하는 기술프로그래밍 언어 : Java, Pyth.. 더보기
[Java] toString() toSting()객체(Object) 정보를 문자열(String)로 반환할 때 사용하는 메서드이다.Object 클래스에 toString() 메서드가 기본적으로 정의되어 있다.모든 클래스는 Object 클래스를 상속받으므로, toString() 메서드를 사용할 수 있다.public class Person { // extends Object 생략 String name; public Person(String name) { this.name = name; } @Override public String toString() { return "Person name: " + name; }} toString() 특징1. 객체의 정보를 확인할 수 있다.Objec.. 더보기