일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 일본어
- メソッド
- ruby
- html
- 자바
- jsp
- 一日一つメソッド
- 연습문제
- Spring
- 単語
- Web
- nico
- 건담
- rails
- Python
- vscode
- 인프런
- springboot
- 비즈니스일본어
- java
- DART
- javascript
- 건담베이스
- Flutter
- 반다이몰
- 日本語
- CSS
- 디지몬
- C로 시작하는 컴퓨터 프로그래밍4판
- rails7
Archives
- Today
- Total
AR삽질러
Dart 기초 - 클래스, 생성자 (3) 본문
728x90
Dart 기초 - 클래스, 생성자 (3)
1. Class 클래스
- class는 객체를 만들기위한 템플릿으로 class를 활용해 데이터와 코드를 그룹화해 관련된 코드를 유지하고 복잡한 문제를 관리 및 재사용성, 유지보수성을 높이는데 효율적이다.
Class의 구성요소 | |
Fields | 클래스 내에 선언된 변수들로 객체의 상태나 특성을 저장해 각 인스턴스마다 고유값을 가질 수 있다. |
Methods | 클래스에서 정의된 함수로 객체가 수행할 수 있는 행동으로 데이터 조작, 계산 등의 결과를 수행하고 반환한다. |
Constructor | 클래스에서 객체를 생성할때 호출되는 메서드로 생성자는 객체의 초기상태를 설정해 사용한다. |
Getters Setters |
필드에 접근을 제어하는 메서드로 getter는 필드의 값을 반환하고 setter는 필드의 값을 설정한다. |
Inheritance | 클래스가 다른 클래스의 필드나 메서드를 상속받을 수 있다. 해당 상속을 통해서 기존의 코드를 재사용하고 확장할 수 있다. |
void main(){
Point point = Point(3, 3);
print(point);
print(point.x);
print(point.y);
Point aPoint = Point(2, 5);
print(aPoint.x);
print(aPoint.y);
Point bPoint = Point(3, 10);
print(bPoint.x);
print(bPoint.y);
}
class Point{
double? x;
double? y;
Point(this.x, this.y);
}
2. Constructor 생성자
- 생성자는 클래스의 인스턴스를 생성하고 초기화하는 함수로 클래스 명을 사용하여 다양한 형태로 정의 가능하다.
Default Constructors 기본생성자
- 매개변수가 없는 생성자로 클래스 내에서 명시적으로 정의하지 않았다면 컴파일러가 자동으로 제공하여 매개변수가 없는 기본 생성자를 만든다.
class Car{
Car(){
print("이것은 디폴트 생성자");
}
}
Redirecting Constructors 리다이렉팅 생성자
- 목적이 동일한 생성자로 생성자의 본문은 비어 있지만 전달 된 생성자에 대한 초기값 등을 구현할 때 활용한다.
class Car{
String model;
int year;
Car(this.model, this.year);
Car.namedConstructor(String model) : this(model, 2024);
}
Named Constructors 이름이 있는 생성자
- 이름이 있는 생성자는 클래스에 여러 옵션을 제공한다.
class Car{
String model;
int year;
Car(this.model, this.year);
Car.named(String model){
this.model = model;
this.year = DateTime().now().year;
}
}
Const Constructors 상수 생성자
- 컴파일 시점에서 상수로 선언된 객체를 생성하며 모든 필드는 final이어야 한다.
class Num{
final int x, y;
const Num(this.x, this.y);
}
Factory Constructors 팩토리 생성자
- 생성자가 새로운 객체의 인스턴스를 반환하지 않도록 한다.
class Num {
static Num? _instance;
Num._instance();
factory Signleton(){
return _instance ??= Singleton._internal();
}
}
728x90
반응형
LIST
'Dart' 카테고리의 다른 글
Dart 기초 - 분기문 (5) (2) | 2024.04.26 |
---|---|
Dart 기초 - 함수와 메서드 (4) (0) | 2024.04.26 |
Dart 기초 - 연산자 (2) (0) | 2024.04.24 |
Dart 기초 - 변수와 타입 (1) (0) | 2024.04.24 |
Dart 기초 - Dart와 Flutter (0) (0) | 2024.04.24 |