본문 바로가기

전체 글529

클래스와 인스턴스 과일장수는 사과를 팝니다. (behavior-행동) 과일장수는 사과 20개, 오렌지 10개를 보유하고 있습니다. (state - 상태) 과일장수의 과일판매 수익은 50,000원입니다. (method - 메소드) ​ 객체(object)는 하나 이상의 상태 정보(데이터)와 하나 이상의 행동(기능)으로 구성이 된다. class라는 틀을 기반으로 객체가 생성이 된다. ​ class aaaa { int xx; int yy; public int xxxxxxx(int n) { int num = n; xx += num; yy -= num; return num; } } final 키워드 : 한번 값을 결정하면 다시는 이 변수의 값을 변경할 수 없다. ex) final int x = 3;으로 선언하면 x = 1000; 이.. 2016. 10. 26.
생성자와 자바의 이름 규칙 생성자 - 클래스의 이름과 동일한 이름의 메소드 반환형이 선언되어 있지 않으면서, 반환하지 않는 메소드 자바 인스턴스 생성시 생성자는 반드시 호출된다. 생성자 내에서는 final 멤버 변수의 초기화가 가능하다. -인스턴스 하나당 딱 한번만 실행 될 수 있다는 것을 보장할 수 있기 때문 클래스, 메소드, 상수의 이름 규칙 클래스 이름 : Camel case 대문자로 시작 둘 이상의 단어가 묶여서 하나의 이름으로 구성될 때, 새 단어는 대문자로 시작 인스턴스 변수, 메소드 이름 : 변형된 Camel case 소문자로 시작 둘 이상의 단어가 묶여서 하나의 이름 구성 시, 새 단어는 대문자로 시작 상수 이름 - 전부 대문자로 표현 둘 이상의 단어가 묶여서 하나의 이름 구성 시, 두 단어 사이에 _삽입 2016. 10. 26.
String 클래스 AAA 클래스가 있고, AAA 클래스에 bbb라는 메소드가 있을 때, (new AAA).bbb(); 로 실행할 수 있다. 인스턴스가 생성이 되면, 인스턴스를 참조할 수 있는 참조 값(주소 값)이 반환된다. 보통 이 참조 값을 참조변수에 저장한 다음, 참조변수를 통해서 메소드를 호출한다. 하지만! 위에 문장처럼 반환되는 참조 값을 바로 이용해서 메소드를 호출할 수도 잇다. String str1 = "My String"; // "My String" 에서 문자열 인스턴스가 생성된다. 문자열이 동일한 경우에는 하나의 String 인스턴스만 생성해서 공유하도록 한다. 왜냐하면 인스턴스를 생성은 시스템에 부담이 가기 때문에 인스턴스의 생성을 최소화 할 필요가 있기 때문이다. "자바는 인스턴스 생성의 수를 줄이기 위.. 2016. 10. 26.
내부 클래스를 쓰는 이유 1. 읽기 쉽고 유지보수가 쉬운 코드가 된다. 2. 하나의 장소에서만 사용되는 클래스들을 한곳에 모을 수 있다. 만약 클래스가 하나의 장소에서만 필요하다면 클래스를 분리하는 것보다 클래스의 내부에 위치시키는 것이 가독력이 좋아진다. 3. 특정 멤버 변수를 외부에서 자주 사용한다고 할 때 이것을 public으로 선언하는 것은 캡슙화의 개념에 어긋난다. 이런 경우에 내부 클래스를 사용하게 되면 특정 멤버 변수를 private로 유지하면서 자유롭게 사용할 수 있다. 특히 그래픽에서 이벤트 처리기를 구현할 때 많이 사용된다. 2016. 10. 26.