목록static (2)
개발자는 기록이 답이다

인터페이스와 정적 메서드 자바 8과 9에서 주요 인터페이스(e.g. Comparator)의 변화가 일어났다. 기본 메서드(defaultl method)와 정적 메소드를 가질 수 있다. 기본 메소드 인터페이스에서 메소드 선언 뿐 아니라, 기본적인 구현체까지 제공할 수 있다. 기존의 인터페이스를 구현하는 클래스에 새로운 기능을 추가할 수 있다. 정적 메소드 자바 9부터 private static 메소드도 가질 수 있다. 단, private필드는 아직도 선언할 수 없다. 자바 8 이전에는 interface에서 메소드선언만 가능하고 정의하는게 불가능했었다. 그런데 나는 자바 17을 사용하는데 왜 "Interface abstract methods cannot have body"라는 컴파일 에러가 나는것 일까? 인..

static 키워드는 클래스의 멤버(변수 또는 메서드)에 적용되며, 해당 멤버가 클래스 자체에 속하도록 지정한다. static 멤버는 클래스의 인스턴스와 관련이 없이 클래스 자체에 속하므로, 여러 인스턴스 간에 데이터를 공유하고 특정 작업을 수행하는 데 사용된다. static키워드를 사용하는 이유? 주로 메모리 효율성과 프로그램 구조의 편의성을 높이기 위해서이다. 먼저, static 멤버는 클래스 수준에 속하므로 프로그램이 시작될 때 메모리에 할당되어 종료될 때까지 유지된다. 이로써 여러 인스턴스에서 동일한 값을 공유하거나 전역 상태를 유지할 때 메모리를 효율적으로 사용할 수 있다. 또한, static 멤버는 객체의 생성 없이 직접 클래스 이름으로 접근할 수 있어서, 클래스 수준에서 독립적인 기능을 구현..