2024-10-29





num1 >>> 200
num2 >>> 100
package classes;
/*
* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
* 캡술화(Encapsulation)?
* - 객체지향 프로그램 4대 특징 중 하나.
* - 데이터를 감추기. 데이터를 외부에서 함부로 변경하지 못하도록
* 외부의 접근을 제한하는 방법.
* - 객체를 캡슐로 싸서 내부를 볼 수 없게 하는 것으로 객체의
* 가장 본질적인 특성임.
* - 예를 든다면 캡슐약을 생각하면 쉬움. 캡슐에 든 약은 약이 어떤
* 색인지, 어떤 성분인지 보이지 않으며, 외부의 접근으로부터 안전함.
* 또한 TV에 케이스가 없다면 외부의 접촉으로부터 보호 할 수 없게
* 됨. 사람이 피부나 근육으로 캡슐화 되어 있지 않으면 혈관, 장기,
* 뇌 등이 노출이 되어 위험한 일이 발생하게 됨.
* - 객체는 캡슐화가 기본 원칙이지만 외부와의 접속을 위해 몇몇 일부
* 만 공개 노출하게 됨.
* - TV는 내부를 캡슐화하고 on/off 버튼, 밝기조절 버튼, 채널 버튼,
* 음량 버튼 등 리모컨과 통신하는 부분은 노출을 시킴.
* - 정보 은닉 : 클래스의 멤버 접근 제어 기법.
* * private : 외부에서 접근차단
* * public : 누구나 접근가능
* - private 멤버를 노출을 시키는 방법
* * setter() / getter() 메서드로 접근 시킴
*
* ==> setter() : - 지정자 메서드
* - 멤버변수에 변경할 값을 전달 받아서
* 멤버변수에 값을 변경하는 메서드.
* ==> getter() : - 획득자 메서드
* - 멥버변수의 값을 읽어 와서 호출한
* 곳으로 읽은 값을 넘겨주는 메서드.
* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
*/
public class Number {
// 멤버변수
private int num1;
private int num2;
public int getNum1() {
return num1;
}
public void setNum1(int num1) {
this.num1 = num1;
}
public int getNum2() {
return num2;
}
public void setNum2(int num2) {
this.num2 = num2;
}
/*
* setter() 메서드로 멤버변수에 초기값을 설정.
* - private 멤버변수에 값을 지정하는 역할을 하는 메서드.
*
* 형식)
* public void set멤버면수명(자료형 매개변수) {
* 멤버변수 = 매개변수;
* }
*/
//public void setNum1(int n1) {
// num1 = n1;
//}
//public void setNum2(int n2) {
// num2 = n2;
//}
/*
* getter() 메서드로 멤버변수에 할당된 값을 가져오는 메서드
* - private 멤버변수에 저장된 값을 가져오는 역할을 하는 메서드.
*
* 형식)
* public 멤버변수자료형(반환형) get멤버변수명() {
* return 멤버변수명;
* }
*/
//public int getNum1() {
// return num1;
//}
//public int getNum2() {
// return num2;
//}
}
package classes;
public class Number_10 {
public static void main(String[] args) {
Number number = new Number();
// 직접적인 접근이 안됨 - private 접근지정자 때문
// number.num1 = 100;
number.setNum1(200);
number.setNum2(100);
System.out.println("num1 >>> " + number.getNum1());
System.out.println("num2 >>> " + number.getNum2());
}
}'Java > 기초 내용 정리' 카테고리의 다른 글
| Java(Class&Method)_Exam_02 (0) | 2024.10.29 |
|---|---|
| Java(Class&Method)_Class_11 (0) | 2024.10.29 |
| Java(Class&Method)_Class_09 (0) | 2024.10.29 |
| Java(Class&Method)_Class_08 (0) | 2024.10.28 |
| Java(Class&Method)_Class_07 (0) | 2024.10.28 |