접근 제한자란? : 클래스, 멤버변수, 메소드 등의 사용 가능 범위를 지정 private : 선언된 클래스 내에서만 직접 접근 가능 private로 지정할 경우 메인 메소드에서 객체를 생성하여 필드에 값을 넣을 때 직접 접근을 불가능하게 만들어줍니다. (setter로 값을 변경해주는 것이 좋습니다.) protected : 해당 클래스와 해당 클래스를 상속한 클래스 내에서만 접근 가능 default : 같은 패키지 내에서 접근 가능 기본 값이기 때문에 따로 default라고 쓰지 않음 public : 같은 프로젝트 내에서 접근 가능 결론! 멤버변수 -> private 메소드 -> public 을 넣으세요! (참고로, 클래스는 public, default만 가능하며 public은 파일명과 동일한 하나의 클래..
클래스 구성 필드 생성자 : 초기값을 설정합니다. 만들지 않으면 자동 생성됩니다. *생성자를 2개 이상 만드는 경우를 오버로딩이라고 하며 매개변수 수를 다르게 설정할 수 있습니다. 메소드 public O : 다른 클래스에서 사용 가능 public X : 다르 클래스에서 사용 불가 return O : 리턴타입 넣어주기 return X : void 넣어주기 클래스 사용 main메소드에 객체 생성 메소드 사용 필드의 값 변경하는 setter메소드 : Monitor클래스에 이름을 수정할 수 있는 setName메소드를 만들어줍니다. : setName()을 사용해서 이름을 변경할 수 있습니다.
배열의 복사에 대해서 배열 arr2의 값을 배열 arr1로 넣어주면 배열 arr2는 arr1의 요소를 그대로 받는 것이 아닌 메모리의 주소값으로 복사가 됩니다. 그래서 arr2[0] = 10으로 바꾸면 같은 주소 값인 arr1[0] = 10 바뀌게 됩니다. 만약, 주소가 아닌 값을 그대로 받아오고 싶다면 Arrays.copyOfRange(복사할 배열명, a, b) : 복사배열의 인덱스 a부터 b이전까지 (b포함 X) 을 사용해주면 주소값이 아닌 값을 복사할 수 있습니다.