[자바질문] public 과 private..
소라
안녕하세요.
public 과 private 의 사용 용도를 자세히 알고 싶습니다. public 은 다른곳에서 사용 가능하고, private 는 다른곳에서 불러와
사용이 불가능 한걸로 아는데요, 그렇다면 왜 처음부터 할때 다 public 으로 지정은 않해 놓는건가요? 굳이 private 로 지정 할
필요 없을것 같아서요. 답변 부탁 드립니다.
-
계획자 2024-03-28
맴버변수를 public로 선언할 경우..
추후 유지보수를 생각하면 이 변수가 어디서 수정이 되는지 모든 소스를 찾아봐야 되는 힘든점이 있죠.
private라면 이 맴버변수를 수정(접근)할 수 있는 행위는 당연히 이 class 내부에만 있다고
확신을 할 수 있지 않을까요. (걱정없이 하나의 class만 수정하면 되지요)
등등..여러가지 장점이 있습니다.
oop관련 서적을 한번 보시면 더 좋은 설명이 많을꺼라고 생각이 되네요 -
알찬마루 2024-03-28
어딘가에 글을 읽어 보면.. 이런 이야기가 있죠.
가까이 다가가지 않기만 하면 되고, 떨어지지 않기만 하면 되는데... 고층 건물의 난간은 왜 필요한가요? -
봄 2024-03-28
이유는 여러가지가 있습니다.^^ 멤버변수는 private , 메소드는 public 으로 지정하는경우가 많은데요 ,
내가 디자인한 클래스의 멤버변수를 다른 (외부)에서 접근하여 변경하지 못하게 하기 위한 이유가 있습니다.
만약 지판기란 클래스가 있고 돈넣는 입구에돈을 넣는다라는 메소드가 있고 자판기에 삽입된 금액 이라는 멤버 변수가 있다고 치면 , 절대 자판기에삽입된금액(private변수)은 입구를통해서. (public Method)넣는 방법밖에 없습 -
예다움 2024-03-28
자바의 엄청난 기능인 캡슐화!!!