안녕하세요. 우당탕탕 개발 일지 입니다. ios 프로젝트를 준비중이라 혼자 dart를 독학해야 합니다. 유튜브 <코드 팩토리_ 왕초보 dart 강의>를 보고 공부 합니다. 자료가 많아서 마음만 먹으면 공부할 수 있는 환경에 감사하네요...아자아자 화이팅!
#22 super와 this
https://youtu.be/d-fheUTjyHo?si=lFvS7-WtizMnMaBf
void main()
{
Engineer codeFactory =new Engineer(
l:['dart','java','C#'],
name:'코드 팩토리',
building:'여의도 위워크',
);
print(codeFactory.name);
print(codeFactory.buliding);
print(codeFactory.l);
codeFactory.sayname(); // this.name은 null이고 super.name은 코드팩토리.
}
class Employee{
final String building;
final String name;
Employee(
String building,
String name,
):this.building =building;
this.name=name;
)
}
// 엔지니어
//사용할줄 아는 언어_ 리스트로
class Engineer extends Employss{
List<String> l;
Engineer({
List<String>l,
String name,
String building,
}) : this.l=l,
super(
building,
name,
);
void sayInfo(){
print('저의 이름은 ${super.name}입니다.
제가 근무하는 건물은 ${this.building}입니다.
제가 사용할 수 있는 언어는 ${this.l.join(', ')}입니다. );
}
void sayname()
{
print('this.name은 ${this.name}, super.name은 ${super.name}');
}
}
#23 interface (선언,구현)
- class A implements B : A는 B에 있는 변수와 메소드가 반드시 정의 되어 있어야 함.
void main()
{
BoyGroup bts =new BoyGroup('bts');
bts.sayName();
}
//선언
class Idol {
String name;
void sayName(){}
}
// 구현
class BoyGroup implements Idol{
String name;
BoyGroup(
String name,
):this.name=name;
void sayName(){
print("제 이름은 ${this.name}입니다.");
}
}
상속이 interface를 대체할 수 있음.
#24 cascade
..method 하면 반복된 객체 이름을 생략할 수 있음.
void main(){
new Idol('슬기')
..sayName();
}
//cascade operator
class Idol {
String name;
String group;
Idol(
String name,
String group,
) : this.name =name,
this.group =group;
void satName(){
print('제 이름은 ${this.name}입니다.');
}
}
728x90
'[프로그래밍 언어 & Tool] > Dart' 카테고리의 다른 글
[Dart] 독학 필기 #4_Class get ,set , 상속, Method Overriding,static (6) | 2025.04.08 |
---|---|
[Dart] 독학 필기 #3_ function,typedef,Class 생성 , Constructor (0) | 2025.04.07 |
[Dart] 독학 필기 #2_ final,const, 반복문,조건문 ,enum (0) | 2025.03.31 |
[Dart] 독학 필기 #1_ String,List,Map,var,dynamic,캐멀케이징 (0) | 2025.03.30 |