반응형

클래스와 객체
클래스는 객체를 생성하기 위한 청사진입니다. Dart에서 클래스를 정의하고 사용하는 방법은 다음과 같습니다:
class Person {
String name;
int age;
Person(this.name, this.age);
void introduce() {
print("안녕하세요, 제 이름은 $name이고, 나이는 $age세입니다.");
}
}
void main() {
Person person = Person("Alice", 30);
person.introduce();
}
생성자
Dart에서는 여러 종류의 생성자를 정의할 수 있습니다:
기본 생성자
class Coffee {
String name;
Coffee(this.name);
}
네임드 생성자
class Coffee {
String name;
Coffee(this.name);
Coffee.make(String name) : this.name = name;
}
void main() {
Coffee myCoffee = Coffee.make("Macchiato");
print(myCoffee.name);
}
캡슐화
Dart에서는 변수명 앞에 언더스코어(_)를 붙여 프라이빗 변수를 선언할 수 있습니다:
class Coffee {
String _name;
Coffee(this._name);
void displayName() {
print("커피 이름: $_name");
}
}
상속
Dart에서는 extends 키워드를 사용하여 상속을 구현합니다:
class Animal {
void makeSound() {
print("Some generic sound");
}
}
class Dog extends Animal {
@override
void makeSound() {
print("Bark!");
}
}
다형성
Dart에서 다형성은 주로 메서드 오버라이딩을 통해 구현됩니다:
void main() {
Animal animal = Dog();
animal.makeSound(); // 출력: Bark!
}
추상 클래스
추상 클래스는 abstract 키워드를 사용하여 정의합니다:
abstract class Shape {
void draw();
}
class Circle extends Shape {
@override
void draw() {
print("Drawing a circle");
}
}
인터페이스
Dart에서는 별도의 interface 키워드 없이 클래스를 인터페이스로 사용할 수 있습니다:
abstract class Shape {
void draw();
}
class Circle extends Shape {
@override
void draw() {
print("Drawing a circle");
}
}
이러한 OOP 개념들을 활용하면 코드의 재사용성과 유지보수성을 크게 향상할 수 있습니다. Dart의 OOP 기능은 Flutter 앱 개발에서 특히 중요한 역할을 하며, 효율적이고 구조화된 코드 작성을 가능하게 합니다.
[Dart] 다트 객체지향 프로그래밍 (OOP)
다트(Dart)는 객체지향 프로그래밍(object-oriented programming / OOP) 패러다임을 지원하는 프로그래...
blog.naver.com
[Dart 완전 정복] 다트 함수와 람다, 예외처리 마스터하기
Dart 언어에서 함수는 코드의 재사용성과 구조화에 핵심적인 역할을 합니다. 이 글에서는 Dart의 함수, 람다 표현식, 그리고 예외 처리에 대해 상세히 알아보겠습니다. 함수의 기본 구조와 특징기
hoosfa.tistory.com
반응형
'IT기술 > 다트 (dart)' 카테고리의 다른 글
| Dart 비동기 프로그래밍: Future, async, await, Stream (0) | 2025.03.26 |
|---|---|
| [Dart 완전 정복] 다트 함수와 람다, 예외처리 마스터하기 (0) | 2025.03.21 |
| [Dart 완전 정복] 다트 연산자와 제어문 마스터하기 (0) | 2025.03.21 |
| [Dart 완전 정복] 다트 컬렉션(Collection) 마스터하기: List, Map, Set, Enum 총정리 (2) | 2025.03.20 |
| [Dart 완전 정복] 다트 프로그래밍 언어의 핵심 개념과 기초 문법 총정리 (0) | 2025.03.19 |