static

장윤찬·2021년 12월 19일
0

dart language

목록 보기
11/12

https://dart.dev/guides/language/language-tour#class-variables-and-methods

static키워드는 class내의 속성이나 메소드를 인스턴스에 귀속되는것이 아니라, 클래스 그 자체에 연관되어지게 해준다.

  • 예시

Circle클래스의 sideAndColour메소드를 메인함수 내에서 사용하기 위해서는 클래스의 객체를 생성하여 초기화작업을 진행해야한다. 만약 클래스의 메모리가 매우 크다면, 이는 매우 무거운 작업이 될것이다.
static키워드를 통해 객체생성(초기화) 작업없이 간단하게 class 내의 속성과 메소드를 사용할 수 있다.

속성 static설정

파이값 같은 경우는 변하지않는 속성이다. 따라서 파이속성을 static키워드에 지정해보자.

메인 함수내에서 colour속성을 사용할 때는 객체생성(초기화)작업을 통해서 사용해야 하지만 파이속성은 Circle클래스 자체에 귀속되므로 Circle.pi를 통해 간편하게 사용이 가능하다.
또한, static키워드를 사용하면 해당속성을 클래스 내에서도 const로 지정하여, 불변하게 할 수 있다.

class Circle{
  static const double pi = 3.14;
}

메소드 static설정

sideAndColour케소드를 static키워드로 지정해보자.

메소드는 Circle클래스 자체에 귀속되므로 객체생성의 초기화과정이 필요없이 Circle.sideAndColour() 이렇게 간편히 사용할 수 있다.

profile
Flutter 학습 일기

0개의 댓글