목록프로그래밍 (25)
passion and relax
상속으로 해야하는지, 변수로 해야 하는지A는 B다, B는 A다가 성립 된다면, (고양이는 동물이다) A는 B다 : B extends A B는 A다 : A extends BA는 B다, B는 A다가 성립이 안된다면, (화장실에는 욕조가 있다) A에는 B가 있다 : A의 인스턴스 변수로 B를 선언 B에는 A가 있다 : B의 인스턴스 변수로 A를 선언 상속의 장점쉽게 확장할 수 있다. (적절한 디자인패턴이 동반된다면, 유지보수가 쉽고 기다려 진다)코드 중복 방지일련의 클래스를 위한 공통적인 규약을 정의 (abstract)다형성을 이용하여 상위 객체에 하위 객체 담기Animal[] animals = new Animal[5];animals[0] = new Dog();animals[1] = ne..
ArrayList. add(Object elem) : 객체 매개변수(elem)를 목록에 추가. remove(int index) : index 매개변수로 지정한 위치에 있는 객체를 제거. remove(Object elem) : 주어진 객체가 ArrayList에 있으면 그 객체를 제거. contains(Object elem) : 객체 매개변수 elem에 매치되는 것이 있으면 true. isEmpty() : 목록에 아무 원소도 없으면 true. indexOf(Object elem) : 객체 매개변수(elem)의 인덱스 또는 -1을 리턴. if (index >= 0) {} 과 함께 자주 사용됨.. size() : 현재 목록에 들어있는 원소의 개수 리턴. get(int index) : 주어진 index 매배변수 ..
닷컴 가라앉히기. 구현 기능 파악. 고수준 설계 (순서도 작성). 클래스 개발 . 클래스에서 뭘 해야하는지 파악 . 인스턴스 변수 목록과 메소드 목록 작성 . 준비코드(=유사코드=pseudo-code) 작성 : 문법보다는 논리를 중점적으로 살펴보기 위해 유사코드 형태로 표현한 것 . 테스트 코드 작성 : 실제 코드를 테스트하고 작업이 제대로 처리되는지 확인하기 위한 클래스/메소드 . 실제 코드 작성 : 메소드를 실제 테스트하며 구현하는 코드 . 디버그 또는 재구현 난수 만들기. 0 ~ 4의 난수 발생int randomNum = (int) (Math.random() * 5). 1 ~ 5의 난수 발생int randomNum = ((int) (Math.random() * 5)) + 1;. 0..