package com.test4;
class Circle{
private int r;
public void setData(int r){
this.r = r;//
}
public double area(){
return r*r*3.14;
}
public void write(double a){
System.out.println("반지름:"+r);
System.out.println("넓이"+a);
}
}
public class Test2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Circle ob1 = new Circle();
double result;
ob1.setData(10);//
result = ob1.area();
ob1.write(result);
ob1.setData(30);
result = ob1.area();
ob1.write(result);
}
}
--------------------
package com.test4;
class Circle{
private int r;
public void setData(int r){
this.r = r;//
}
이부분을
그냥
package com.test4;
class Circle{
public int r;
로 바꿔도 똑같은데
굳이 private 주었다가
public으로 새로 변수 r을 만들어서
this.r에 public의 변수 r을 대입시키는 이유가 무었인지
이해를 못하였습니다;;
제가 this를 잘못 이해한건지 ㅠㅠ
this문제가 아니라...//멤버변수를 노출시키지 않기 위해서...
훔...여기서는 문제가 없지만 private 안에 뭐가 복잡하게 있을경우에 캡슐화 하려고 this가 쓰이는건가? this의 쓰임세가 해깔림;;
this는 그냥 클래스내에서 자기를 나타내는 레퍼런스라고 하나 자바는? 여튼 그거(포인터)일뿐이지...//멤버함수에서 자기 자신 반환해줄때도 쓰일 수 있고 연산자오버로딩할때?...아님 저렇게 변수이름같을때 구분해주기 위해서 쓰일수도있고..?
감사~
this를 씀으로써 내부적으로 도는 횟수를 줄인다 this를 쓰면 리쏘스를 작게 먹는다는 뜻이기도 하고 가벼워 진다는 말도 됨 (정확히는 빨라진다지?) 쨋든 그렇고 private는 보안문제;;