본문 바로가기
728x90
반응형

OOP5

OOP(5) 더 복잡한 객체 지향 프로그래밍(OOP) 예제로 간단한 주문 처리 시스템을 모델링하는 것을 살펴보겠습니다. 이 예제에서는 주문, 제품, 그리고 고객을 다루는 클래스를 만들어 보겠습니다. // 제품 클래스 정의 class Product { constructor(name, price) { this.name = name; this.price = price; } } // 주문 클래스 정의 class Order { constructor(customer) { this.customer = customer; this.items = []; } addItem(product, quantity) { this.items.push({ product, quantity }); } calculateTotal() { return thi.. 2023. 11. 7.
OOP(4) 게임 캐릭터와 캐릭터의 행동을 모델링하는 객체 지향 프로그래밍(OOP) 예시입니다. // 게임 캐릭터 클래스 정의 class GameCharacter { constructor(name, health, damage) { this.name = name; this.health = health; this.damage = damage; } attack(target) { console.log(`${this.name}이(가) ${target.name}을(를) 공격합니다.`); target.takeDamage(this.damage); } takeDamage(amount) { this.health -= amount; if (this.health 2023. 11. 6.
OOP(3) 은행 계좌와 트랜잭션을 모델링하는 객체 지향 프로그래밍(OOP)의 예시입니다. 은행 계좌와 트랜잭션을 모델링하는 객체 지향 프로그래밍(OOP)의 예시입니다. // 은행 계좌 클래스 정의 class BankAccount { constructor(accountNumber, accountHolder, balance) { this.accountNumber = accountNumber; this.accountHolder = accountHolder; this.balance = balance; this.transactions = []; } deposit(amount) { if (amount > 0) { this.balance += amount; this.transactions.push(`입금: +${amount}`.. 2023. 11. 5.
OOP(2) 이번에는 동물과 동물의 서브클래스로 강아지와 고양이를 모델링하는 예제입니다. // 동물 클래스 정의 class Animal { constructor(name, species) { this.name = name; this.species = species; } speak() { console.log(`${this.name}는 소리를 내지 않습니다.`); } } // 강아지 클래스 (동물의 서브클래스) class Dog extends Animal { speak() { console.log(`${this.name}는 멍멍 짖습니다.`); } } // 고양이 클래스 (동물의 서브클래스) class Cat extends Animal { speak() { console.log(`${this.name}는 야옹 소리를 .. 2023. 11. 5.
OOP JavaScript는 객체 지향 프로그래밍(OOP) 언어입니다. 객체 지향 프로그래밍은 데이터와 해당 데이터를 조작하는 메서드(함수)를 논리적으로 그룹화하는 프로그래밍 패러다임입니다. JavaScript는 객체, 프로토타입, 상속 및 다른 객체 지향 프로그래밍 개념을 지원합니다. JavaScript에서 객체는 키-값 쌍의 집합인 속성(properties)과 해당 속성을 조작하는 메서드를 포함할 수 있습니다. 또한 JavaScript의 프로토타입 기반 상속은 객체 간 코드 재사용을 지원하며 객체 지향 프로그래밍의 핵심 원칙 중 하나인 상속 개념을 구현합니다. 예를 들어, JavaScript에서 클래스를 정의하고 해당 클래스로 객체를 생성할 수 있습니다. 또한 클래스의 메서드를 사용하여 객체를 조작할 수 있.. 2023. 11. 5.
728x90
반응형