본문 바로가기

자바29

[자바] final 키워드 final 키워드 '마지막' -> 즉 더 이상 값이 변하지 못한다는 의미 ​ 1. final 메서드 자식 클래스가 현재의 메소드를 수정할 수 없다 즉 '오버라이드'해서 재정의가 불가능한 메서드 ​ 2. final 클래스 상속을 하지 못하는 클래스 자식 클래스를 만들어낼 수 없다. 자동적으로 클래스에 선언된 모든 메서드의 오버라이드 금지 final 클래스는 실행 시점에서 더는 하위 클래스를 검색하지 않기 때문에 속도 면에서 미세하게 빠름 ​ 3. final 변수 변수 초기화 이후에 값을 바꿀 수 없음 상수 처리 2020. 10. 23.
[자바] 추상 클래스 (Abstract Class) 추상 클래스 (Abstract Class) 객체 생성의 용도가 아닌 변수 타입 선언의 용도와 특정 코드를 하위 클래스로 물려주는 상속의 기능을 활용할 때 사용되는 클래스 (즉 부모 클래스로만 활용 가능) 즉 객체의 틀의 역할을 할 뿐, 객체 자체를 생성할 순 없다. ​ 추상 메소드 (Abstract Method) 실체가 없어서 자식 클래스에서 반드시 오버라이드해야 하는 메소드 구현의 강제성 부여 ​ ※추상 메소드가 존재한다면 해당 클래스는 무조건 추상 클래스로 선언해야함 ​ 추상 클래스 상속이 아닌 일반 상속을 써야 되는 경우 오버라이드가 필요없는 경우 부모 클래스도 객체화 되어야 할 때 2020. 10. 23.
[자바] Static 키워드 ※참조 : [Java] Static 키워드 바로 알고 사용하자 자바를 한번쯤 공부해본사람이라면 static키워드를 모르지는 않을 것입니다. 하지만, 바르게 알고 있는 사람들은 그리 많지 않습니다. 자바경력자를 면접볼 때 static키워드에 대해서 질문하곤 합 vaert.tistory.com Static static이 붙은 변수, 메소드는 클래스가 메모리에 올라갈 때 선언이 되어서 인스턴스(클래스 객체)를 생성하지 않고 사용이 가능함 정적인 -> 메모리에 고정되기 때문 static을 사용한다의 궁극적 의미는 모든 객체가 '공유' 하고 있다는 의미 ​ 메모리 구조 1. 메소드 영역 클래스가 올라가는 메모리 영역 GC의 영향을 받지 않고 항상 상주하는 영역 static으로 선언된 것들이 올라가는 영역 클래스에.. 2020. 10. 23.
[자바] 접근 제어자 ※출처 : [JAVA] 접근제어자 public, protected, private 접근제어자 public, protected, private 변수나 메쏘드를 선언할 때 접근을 제어할 수 있는 modifier를 설정할 수 있다. 이러한 접근 관련 modifier를 통해서 객체지향 언어의 중요 특성 중 하나인 캡슐화(enca hyeonstorage.tistory.com 구분 modifier 설명 접근 권한 public 모든 클래스에서 접근가능 protected 동일 패키지 내에 있는 클래스, 하위클래스에서 접근 가능 private 클래스 내에서만 접근 가능 종류 클래스 하위클래스 동일 패키지 모든 클래스 private O X X X (default) O X O X protected O O O X public.. 2020. 10. 23.