π μ κ·Ό μ νμ
1. μ μ
ν¨μλ νλ(λ³μ) μ κ·Όμ μ νν μ μμ΅λλ€.
β’ κΈ°λ³Έμ μΌλ‘ λ€λ₯Έ νμΌμμ importλ§ λ°μΌλ©΄ public νκ² μ κ·Όμ΄ κ°λ₯ν©λλ€.
β’ private λ‘ μ κ·Όμ μ ν νμ κ²½μ°, νμΌ λ΄λΆμμλ§ μ κ·Όμ΄ κ°λ₯ν©λλ€.
2. private μ μΈ λ°©λ²
νλμ ν¨μ λͺ¨λ μ΄λ¦ μμ _ μ μ λ ₯ν΄μ£Όλ©΄ λ©λλ€.
class Student {
String? _name;
}
π Getter
1. μ μΈ λ°©λ²
νμ
get κ²ν°λͺ
{
return κ²ν° λ°ν κ°
}
λ¨μν λ°νκ°λ§ μμ±ν κ²½μ° μλμ κ°μ΄ λλ€μ ν¨μλ‘ ννν μ μμ΅λλ€.
νμ
get κ²ν°λͺ
=> κ²ν°λ°νκ°
2. μμ
class Student {
String? name;
int? _age = 0;
int? get age => _age;
}
void main() {
Student student = Student();
print(student.age);
}
π Setter
1. μ μΈ λ°©λ²
set μΈν°λͺ
(μΈν° νμ
λ§€κ°λ³μλͺ
) {
ν λΉν _μΈν°_λ³μ = λ§€κ°λ³μλͺ
;
}
2. μμ
class Student {
String? name;
int? _age = 0;
set age(int? value){
_age = value;
}
}
void main() {
Student student = Student();
student.age = 20;
}
π Getter, Setter μμ© μμ
β’ index.dart
import 'class/student.dart';
void main() {
Student girlStudent = Student(name: 'μ€λ₯', age: 10);
girlStudent.printTinfo();
// ----------------
// name: μ€λ₯ νμ
// age: 10
// ----------------
// getter κ°μ Έμ€κΈ°
girlStudent.name = 'μ€λ¬';
print('main = ${girlStudent.name}');
// getter μ€λ¬ νμ
// main = μ€λ¬ νμ
}
β’ student.dart
class Student {
Student({required String name, this.age}) : _name = '$name νμ';
// λ³μ μμ _κ° μμ κ²½μ°
// priavat
String _name; // μ΄κΈ°κ° ν λΉ
// public
int? age; // nullμ νμ©
set name(value) {
_name = '$value νμ';
}
String get name {
print('getter $_name');
return _name;
}
void printTinfo() {
print('----------------');
print('name: $_name');
print('age: $age');
print('----------------');
}
}
'π Programming > Dart' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Dart] μμκ³Ό Super, Override (0) | 2022.06.07 |
---|---|
[Dart] ν΄λμ€ μμ±μ(Class Constructor) (0) | 2022.06.06 |
[Dart] ν΄λμ€(Class) μ μΈκ³Ό μΈμ€ν΄μ€(Instance) (0) | 2022.06.06 |
[Dart] κ°μ²΄ λ€λ£¨κΈ° Map νμ (0) | 2022.06.06 |
[Dart] μ΄κ±°ν λ³μ(List, Set)μ μ λ€λ¦(Generic) (0) | 2022.06.06 |