본문 바로가기

2011/06/02

[Head First Java] Chapter2 숫자 맞추기 게임 숫자 맞추기 게임에서는 객체가 서로 다른 객체의 메소드를 호출하는 방법을 보여주고 있다. GuessGame 클래스 public class GuessGame { //인스턴스 변수 선언 Player p1; Player p2; Player p3; public void startGame(){ //메소드 선언 //Player 객체를 각 인스턴스 변수에 대입 p1 = new Player(); p2 = new Player(); p3 = new Player(); //찍을 숫자 설정 int guessp1 = 0; int guessp2 = 0; int guessp3 = 0; //찍은 숫자가 맞는지 여부를 저장하기위한 변수 선언 boolean p1isRight = false; boolean p2isRight = false;.. 더보기
[Head First Java] Chapter2 Movie 객체를 만들어 테스트해봅시다. 앞에 첫 객체를 만드는 것 이라면 이번에는 응용이었다. Movie 클래스 class Movie { String title; String genre; int rating; void playIt(){ System.out.println("영화를 상영합니다."); } } MovieTestDrive 클래스 public class MovieTestDrive { public static void main(String[] args) { Movie one = new Movie(); one.title = "주식과 함께 사라지다"; one.genre = "비극"; one.rating = -2; Movie two = new Movie(); two.title = "로스트 인 큐비클 스페이스"; two.genre = "코미디";.. 더보기
[Head First Java] Chapter2 첫 번째 객체를 만들어 봅시다. 객체를 만들고 사용려면 어떻게 해야하는지 알려주고 있다. class Dog { int size; String breed; String name; void bark(){ System.out.println("Ruff! Ruff!"); } } class DogTestDrive { public static void main(String[] arg){ Dog d = new Dog(); d.size = 40; d.bark(); } } 출력 결과 Ruff! Ruff! 처음으로 만들어 봤다. Dog 클래스를 만들고 main 메소드에서 Dog 객체를 만들어 메소드 안에서 설정하고 호출을 할 수 잇다는 것을 알게 되었다. 더보기
[Head First Java] Chapter2 의자 전쟁 Chapter2 의자 전쟁 내용에서는 절차적 프로그래밍과 객체지향적 프로그래밍의 비교를 나타내고 있다. 초반에는 절차적 프로그래밍이 빠르게 보이나 나중에 스펙이 바뀌면 그에 대한 유동성이 떨어지고, 그에 따라 새로 테스트하고, 컴파일해야 하는 문제가 발생해 어렵게 된다. 하지만 객체지향적 프로그래밍은 부분마다 클래스를 만들기 때문에 스펙이 변경되더라도 해당 부분만 수정하면 되어 유동성이 좋으며 컴파일 또한 해당 부분만 하면 되기 때문에 새로 테스트하는 부분에 대하여 전체적으로 수정하고 컴파일하는 절차적 프로그래밍보다는 안전성 면에서도 좋다. 그리고 코드의 재사용에도 유리하다. 상속과 오버라이딩에 대한 단어가 나왔는데 이 부분은 나중에 나온다고 한다. 인터넷의로 검색해보니 아래 같은 글이 있었는데 이 글도.. 더보기
[Head First Java] Chapter1 연습문제 수영장 퍼즐 코드 조각을 한번만 사용하여 아래와 같은 출력 결과를 얻어야 한다. 출력 결과 a noise annoys an oyster코드 조각 System.out.print(" "); System.out.print("a"); System.out.print("n"); system.out.print("an"); x > 0 x 1 x > 3 x < 4 더보기