Flutter

·Flutter
믹스인 알아보기일반 클래스는 class라는 예약어로 선언하고 변수와 함수, 생성자를 정의할수 있습니다. 그런데 믹스인은 mixin이 라는 예약어로 선언합니다.// 믹스인 선언mixin MyMixin { int data1 = 10; void myFun1() { print('MyMixin... myFun()...'); }} 믹스인에는 변수와 함수를 선언할 수 있지만 클래스가 아니므로 생성자는 선언할 수 없습니다.// 믹스인에 생성자 선언 오류mixin MyMixin { int data1 = 10; static int data2 = 20; MyMixin() {} // 오류 void myFun1() { print('MyMixin... myFun()...'); } static v..
·Flutter
앞에서 상속은 다른 클래스의 멤버를 그대로 사용하는 방법이라고 했습니다. 그런데 추상 클래스나 인터페이스를 이용하면 다른 클래스의 멤버를 그대로 사용하지 않고 새로 구현하게 할 수 있습니다. 추상 클래스 알아보기추상 클래스는 추상 함수만 제공하여 상속받는 클래스에서 반드시 재정의해서 사용하도록 강제하는 방법입니다. 추상 함수는 실행문이 작성된 본문이 없는 함수를 의미합니다. 다음 코드에서는 일반 클래스로 선언한 User에 some() 함수를 선언했지만 중괄호로 본문 영역을 누락해서 오류가 발생합니다.// 추상 함수 선언class User { void some(); // 오류} 이처럼 본문을 생략한 추상 함수를 선언할 때는 이 함수가 속한 클래스에 abstract 예약어를 붙여 추상 클래스로 선언해야 합..
·Flutter
상속과 오버로딩상속은 클래스를 재활용하는 객체지향 프로그래밍의 핵심 기능입니다. 기존 클래스를 상속받으면 새 클래스에서 기존 클래스의 멤버를 이용할 수 있습니다. 이때 기존 클래스를 '부모 클래스', 상속받은 새 클래스를 '자식 클래스'라고 합니다. 다트도 상속을 제공하며 다른 객체지향 프로그래밍 언어와 큰 차이는 없습니다. 다트에서 클래스를 선언할 때 어떤 클래스를 상속받으려면 extends 예약어를 사용합니다. 다음 코드를 보면 SuperClass라는 이름으로 선언한 클래스가 있습니다. 그리고 SubClass는 SuperClass를 상속받아 선언했습니다. 이렇게 하면 SubClass의 객체로 SuperClass에 선언된 멤버를 사용할 수 있습니다.// 함수에서 널 불허 지역 변수 초기화class Su..
·Flutter
const로 생성자 선언상수 생성자는 다음처럼 const 예약어로 선언하면 본문을 가질 수 없습니다. 즉, {}를 추가할 수 없습니다.// 상수 생성자 선언class MyClass { const MyClass();} 또한 상수 생성자가 선언된 클래스의 모든 멤버 변수는 final로 선언해야 합니다. 다음 코드에서는 MyClass의 멤버 변수를 final로 선언하지 않았는데 const로 상수 생성자를 선언해서 오류가 발생합니다. 생성자를 const로 선언할 때는 클래스의 모든 변수를 final로 선언해야 합니다. 따라서 상수 생성자는 클래스의 모든 변수를 초깃값으로만 사용하도록 강제하는 수단으로 사용합니다.// 상수 생성자 잘못 선언한 예class MyClass { int data1; const My..
런던 이즈 블루
'Flutter' 카테고리의 글 목록 (2 Page)