-
static에 관해..소프트웨어 2021. 5. 15. 00:19
우아한Tech 유튜브 채널을 통한 공부 정리
(자바의 스태틱 )
1.static 변수
메모리에 고정적으로 할당되어, 프로그램이 종료될 때 해제되는 변수
예를들어
public class Person{
private String name = "blah";
}
이런식이면, 각각 생성될때마다 다른메모리에 할당이됨..
하지만 static으로하면
메모리에 고정적으로 할당되어, 프로그램이 종료될 때 해제되는 변수로 됨
2.static 메소드
public class Person{
public static void printName() {
함수 실행내용
}
}
--> 클래스를 호출하지않고, 생성자를통해 생성하지 않아도,
이미 static 로딩을 통해 메모리에 올라와있기 때문에
해당 메소드를 바로 사용할 수 있음.
3. public class OuterClass {
class Inner {
}
}
4.
싱글턴 - 하나의 인스턴스를 생성하여 재사용, 인터페이스 구현 가능, 오버라이드 가능,
load는 필요에 따라 lazy하게 가능
정적클래스 - 인스턴스 생성x, 인터페이스구현 불가능, 오버라이드 불가능,
load는 static binding으로 빠르게 로딩함
flutter에서 late라는게 있는데.. 그냥 변수 선언적 의미로 사용되는듯하고..
나중에 lazy하게 인스턴스 초기화를 미룰때 쓰는걸로 보임..'소프트웨어' 카테고리의 다른 글
[메모] 콜스택, 이벤트루프 (0) 2021.11.25 [메모] 이벤트루프 이해 (0) 2021.11.25 싱글톤 패턴 (0) 2021.06.08 java 자료구조, arrayList와 linkedList (0) 2021.05.31 static의 단점이나 위험요소 (0) 2021.05.16