본문 바로가기

Java and Android/eclipse Java

Java -클래스의 이해 및 공식문서

(좌) p1 과 p2 라는 인스턴스를 생성하는 컨스트럭터가 있는 클래스 printWrite

 

(우) 일반적인 컨스트럭터가 없는 클래스 Math

 

 

* 자.. 클래스를 만든다고 해보자.
솔직하게 지금까지 만든 클래스는 겁나 단순한 클래스였어..
그래서 그냥 단순한 클래스를 반복 사용해도 전혀~~~ 문제가 없는 클래스였지..

그런데 어라? 해당 클래스에서 값이 계속 수정이 되거나,, 반복되게 바꾸어주어야할때가 오는거야.
그러니까 클래스를 단순 반복해주려고 하니까, 창은 점점 복잡해지고.. 코드는 더러워지고.. 보기가 싫잖아?
그리고 단순반복한 클래스에 일일히 뭘할지 다 지정해줘야해.. 미치고 환장할 노릇인거지.

과연 이런 코드를 짜는 사람과.. 같이 일하고 싶겠니.. 절대 안그렇지..


그래서..

어떤 파일을 수정한다 라는것은 파일 하나만 수정하는것이 아니라 여러가지 작업들이 쭈루룩 들어오고 여러가지 작업들을 다 수정해줘야할때도 있단말이지. 이때 하나의 클래스를 돌려막기 보다는 하나의 클래스를 앞에 뉴를 붙여서 복제해서 각각의 다른 상태를 가지고 있는 인스턴스(복제품)를 만들어서 사용하는것이 훨씬더 효율적이라는거야..

클래스를 만드는 사람들은 그 클래스가 인스턴스가 필요없이 일회용으로 쓸수있다 하면 그냥 쓰지만 긴맥락의 작업에서는 클래스를 복제한 인스턴스를 만들어서 사용자에게 제공하는것이
훨씬더 효율적이다!!
라는것을 좀 기억해줘..

프린트 라이터는 컨스트럭터(생성자)가 있는데, 컨스트럭터가 없는 메소드는 일회용!!

컨스트럭터가 있다는것은 컨스트럭터를 이용해서 인스턴스를 만드는것이 허용되어있다..!!!!

 

 

참조: 자바공식문서 

docs.oracle.com/javase/7/docs/api/

 

Java Platform SE 7

 

docs.oracle.com

 

'Java and Android > eclipse Java' 카테고리의 다른 글

Java - 문법, 리펙토링  (0) 2020.10.28
Java - 간단한 앱만들기(AccountingApp)  (0) 2020.10.27
Java - cmd으로 컴파일 및 런(not use eclipse)  (0) 2020.10.22
Java - OKJavaGoInhome  (0) 2020.10.22
Java - program  (0) 2020.10.17