초보개발자(2)
-
추상클래스(abstract class), 익명클래스(anonymous class)
추상클래스는 “미완성 설계도”에 비유할 수 있다. 클래스가 미완성이라는 거은 멤버의 개수에 관계된 것이 아니라 단지 미완성 메서드(추상 메서드)를 포함하고 있다는 의미이다. 중요한 점은 추상클래스는 인스턴스를 생설할 수 없다. 또한 상속을 통해서 자식클래스에 의해서만 완성(구현)될 수 있다. 이렇게 함으로써 이 클래스를 사용할 때는 상속을 받아 구현을 해주어야 된다는 의미이다. -추상클래스에는 하나 이상의 추상메소드가 있어야 한다. 추상메소드 앞에는 abstract 키워드를 붙여준다 -클래스에 하나라도 추상 메소드가 포함되었다면 클래스도 추상 클래스이므로 클래스명 앞에도 ‘abstract’키워드를 붙여야 한다. 추상메서드는 구현부가 없으므로 괄호{}대신 문장의 끝을 알리는 ';'을 적어준다. 상속받은 추..
2020.03.12 -
정적 변수(static variables)
static 변수는 메모리에 고정적으로 할당 되어, 프로그램이 종료될 때 해제 되는 변수이다 . class 는 컴파일 시 static 영역에 생성되고, new 연산자를 통해 생성한 객체는 heap영역에 생성된다. 즉, static 변수와 static 메소드는 static 메로리 영역에 존재 하기 때문에 객체가 생성되기 이전 컴파일 시 이미 할당 되어있다. static 변수의 특징 1) 메모리에 한번 할당 되므로 여러 객체가 해당 메모리를 공유하게 된다 -하나의 클래스에 하나만 존재하는 것이고 그 클래스의 모든 객체들에 의하여 공유된다. -보통 변수의 static 키워드는 프로그래밍시 메모리의 효율 보다는 공유하기 위한 용도로 사용하는 것이다. 2) 멤버 변수와 다르게 객체의 생성 여부와 상관 없이 딱 하..
2020.03.10