본문 바로가기
반응형

study66

Getter와 Setter 클래스를 선언할 때 필드는 일반적으로 private 접근 제한을 한다. Getter의 필요성 - 외부에서 값 변경 없이 읽을 수만 있게 함. Setter의 필요성 - 외부에서 간접적으로 값을 변경할 수 있게 해 준다. 하지만 아무 값이나 필드에 저장 못하게 함 Getter private 필드의 값을 리턴하는 역할을 한다. (필요할 경우 필드의 값을 가공해서 리턴) getFieldName() 또는 isFieldName() 메서드를 말함. (isFieldName()은 boolean인 경우) Setter 외부에서 주어진 값을 필드값으로 수정한다. (필요한 경우 외부의 값을 유효성 검사한다.) setFieldName(타입 변수) 메서드를 말함. (매개 변수 타입은 필드의 타입과 동일) - 실습 들어가기에 앞서,.. 2022. 2. 18.
접근 제한자( Access Modifier) 다른 패키지에서 클래스를 사용 못하게 막음 (클래스 제한) 클래스로부터 객체를 생성하지 못하게 막음 (생성자 제한) 특정 필드와 메서드를 숨김 처리함 (필드와 메서드 제한) - 접근 제한자 종류 순서대로 접근 제한이 강화된다. 접근 제한 적용 대상 접근할 수 없는 클래스 public 클래스, 필드, 생성자, 메소드 없음 protected 필드, 생성자, 메소드 자식 클래스가 아닌 다른 패키지에 소속된 클래스 default 클래스, 필드, 생성자, 메소드 다른 패키지에 소속된 클래스 private 필드, 생성자, 메소드 모든 외부 클래스 ※ default는 아무것도 안 붙이는 것을 뜻함. - 실습 -- 1. 생성자 접근 제한 패키지를 두개 만든다. (package1, package2) package1 안에.. 2022. 2. 18.
상수(static final) - 상수(static final)란? 객체마다 가지고 있지 않고, 메서드 영역에서 클래스별로 관리되는 불변의 정적 필드 공용 데이터로서 사용 - 상수 선언과 초기화 * 전부 대문자로 작성하고, 다른 단어 결합 시 _ 로 연결하는 것이 관례 1. Earth 클래스 생성함. public class Earth { static final double EARTH_RADIUS = 6400; static final double EARTH_SURFACE_AREA; static { EARTH_SURFACE_AREA = 4 * Math.PI * EARTH_RADIUS * EARTH_RADIUS; } } EARTH_RADIUS 에는 값을 바로 할당 했고, EARTH_SURFACE_AREA 는 static 블록으로 할당함. .. 2022. 2. 14.
final 필드 - final 필드란? 객체마다 가지는 불변의 인스턴스 필드 값을 변경할 수 없는 필드 - final 필드의 딱 한번의 초기값 지정 방법 1.필드 선언시 방법 public class Person { final String nation = "Korea"; } 처음에 "Korea"가 대입이 되면 final로 인해서 nation은 수정될 수 없게 된다. 즉, Korea 로만 사용해야 함. 2.생성자에 주는 방법 public class Person { final String ssn; String name; public Person(String ssn, String name) { this.ssn = ssn; this.name = name; } } 초기값 없이 선언된 final 필드 생성자에서만 값을 줄 수 있다... 2022. 2. 14.
반응형