개발/자바
클래스, 인스턴스
kakk789
2021. 12. 26. 00:04
클래스란 ?
- 서로 연관된 변수와 메소드를 모아서 이름을 붙힌 것.
인스턴스란 ?
- 클래스를 복사하여 사용하는 느낌
ex) 변수 선언을 한 변수에 다른 값들로 하고 싶은 경우에 여러 인스턴스를 만들어서 변수를 재선언 하여 사용가능
(이 경우에는 static빼야함)
클래스화, 인스턴스화 하여 사용하는 경우
1. 클래스화 = 변동되지 않는 값 (예를들어 세율)
-> 변동되지 않는 값은 static으로 그냥 그대로 두는것도 좋음
왜냐면 메모리에 올려야하는데, 쓸데없이 인스턴스화 해서 계속 static 변수 선언하는 것도 좋지 않아서.
** 인스턴스화 하지 않고 클래스 자체로 사용한다는 의미, 오해하지 말것.
2. 인스턴스화 == 변동되는 값
-> 값이 계속 변동될 수 있는 변수에 대해서 인스턴스화 하지 않고 [class.변수] 이런식으로 사용하게 되면 가독성도
떨어 지고, 버그 가능성도 높아짐(코드가 수만줄이 되면 버그 가능성이 많아짐)
-> So, 인스턴스화 해서 각 인스턴스 별로 따로 저장해서 사용하면 겹칠일도 없고 보기도 편함.
반응형