728x90
반응형
private 함수
// 정보의 은닉화
public class MainApp {
public static void main(String args[]) {
Student s1 = new Student(); // 이름 변수(reference = 참조자)
// s1.name="brad"; // name을 직접 수정, 직접 접근 방식은 추후에 유지, 보수시 힘들어짐
s1.setName("brad"); // 이름 간접 수정, 우회 접근
// s1.age=24; // 나이를 직접 수정
s1.setAge(24);
// s1.height=182.5;
s1.setHeight(182.5);
// System.out.println(s1.name); //이름 직접 읽기
System.out.println(s1.getName()); // 이름 간접 읽기
// System.out.println(s1.age); // 나이 직접 읽기
System.out.println(s1.getAge());
// System.out.println(s1.height);
System.out.println(s1.getHeight());
// int i; // 일반 변수
}
}
class Student {
private String name; // 정보의 은닉화, 직접 읽어오는 건 안됨
private int age; // age 수정, 읽기 방법 추가하기
private double height;
void setName(String name) { // 숨겨져 있는 정보를 함수로 수행함, 간접적으로 접근하는 함수
this.name=name; // this(객체)가 붙은 애가 속성(속성들은 보통 private)
}
String getName() {
return name;
}
void setAge(int age) {
this.age=age;
// System.out.println("age 속성은 없어졌습니다.");
}
int getAge() {
return this.age;
// System.out.println("age 속성은 없어졌습니다.");
// return -1;
}
void setHeight(double height) {
this.height=height;
}
double getHeight() {
return this.height;
}
}
728x90
반응형
'즐거운프로그래밍' 카테고리의 다른 글
[자바] 노트패드++ MyResume 예제 1(직접 읽고 쓰기 방법) (0) | 2023.10.11 |
---|---|
[자바] 노트패드++ 정보의 은닉화, private 함수, 생성자 함수 (0) | 2023.10.10 |
[자바] 노트패드++ 함수 : 작은 동작을 묶어서 큰 동작을 만들기 3 (0) | 2023.10.10 |
[자바] 노트패드++ 함수 : 작은 동작을 묶어서 큰 동작을 만들기 2 (1) | 2023.10.10 |
[자바] 노트패드++ 함수 : 작은 동작을 묶어서 큰 동작을 만들기 1 (1) | 2023.10.10 |