본문 바로가기

2011/06/03

[Head First Java] Chapter3 원시 변수 원시 변수 유형 부울과 문자 유형 비트 범위 boolean (JVM에 따라 다름) true 또는 false char 16비트 0~65535 숫자(모두 부호가 있음) 정수 유형 비트 범위 byte 8비트 -128~127 short 16비트 -32768~32767 int 32비트 -2147483648~2147483648 long 64비트 -아주 큰 값~아주 큰 값 부동소수점 소수 유형 비트 범위 float 32비트 바뀔 수 있음 double 64비트 바뀔 수 있음 큰 유형의 변수를 작은 유형의 변수에 대입은 안된다. 키워드와 변수명 - 변수를 만들때는 이름과 유형이 필요하다. - 변수 이름은 예약어를 사용해서는 안된다. 예약어 boolean byte char double float int long short.. 더보기
[Head First Java] Chapter2 연습문제 수영장 퍼즐 코드 조각을 한번만 사용하여 아래와 같은 출력 결과를 얻어야 한다. 출력 결과 helloooo.... helloooo.... helloooo.... helloooo.... 10 코드 조각 e1 = e1 + 1; e1 = count + 1; e1.count = count + 1; e1.count = e1.count + 1; x y e2 count x 0 x > 1 Echo Tester echo() count() hello() e2 = e1; Echo e2; Echo e2 = e1; Echo e2 = new Echo(); x == 3 x == 4 문제 public class EchoTestDrive { public static void main(String[] args){ Echo .. 더보기
[Head First Java] Chapter2 연습문제 코드 자석 아래와 같은 출력 결과를 가지는 코드를 만들어야 한다. bang bang ba-bang ding ding da-ding 코드 조각은 아래와 같다. d.playSnare(); DrumKit d = new DrumKit(); void playSnare(){ System.out.println("bang bang ba-bang"); } public static void main(String[] args){ if(d.snare == true){ d.playSnare(); } d.snare = false; class DrumKitTestDrive{ d.playTopHat(); class DrumKit { void playTopHat(){ System.out.println("ding ding da-ding"); } .. 더보기
[Head First Java] Chapter2 연습문제 컴파일러가 되어봅시다. B문제 소스가 컴파일을 할 수 있는지 확인 소스 class DVDPlayer { boolean canRecord = false; void recordDVD(){ System.out.println("DVD recording"); } } class DVDPlayerTestDrive{ public static void main(String[] args){ DVDPlayer d = new DVDPlayer(); d.canRecord = true; d.playDVD(); if(d.canRecord == true){ d.recordDVD(); } } } 수정된 소스 class DVDPlayer { boolean canRecord = false; void recordDVD(){ System.out.println("DVD r.. 더보기
[Head First Java] Chapter2 연습문제 컴파일러가 되어봅시다. A문제 소스가 컴파일을 할 수 있는지 확인 소스 class TapeDeck{ boolean canRecord = false; void playTape(){ System.out.println("tape playing"); } void recordTape(){ System.out.println("tape recording"); } } class TapeDeckTestDrive{ public static void main(String[] args){ t.canRecord = true; t.playTape(); if(t.canRecord == true){ t.recordTape(); } } }수정된 소스 class TapeDeck{ boolean canRecord = false; void playTape(){ Syst.. 더보기
[Head First Java] Chapter2 객체지향적 프로그래밍 핵심 정리 제작과 테스트가 끝난 코드를 건드리지 않고 프로그램을 확장할 수 있다. 모든 자바 코드는 클래스 내에서 정의 된다. 클래스는 해당 클래스 유형의 객체를 만드는 방법을 설명하는 역할을 한다. 객체는 각자 알아서 자기 할 일을 처리할 수 있다. 객체에는 알고 있는것(속성)과 할 수 있는 것(메소드)이 있다. 객체가 자기 자신에 대해 알고 있는 것은 인스턴스 변수이다. 객체가 할 수 있는 것은 메소드라고 부른다. 클래스를 새로 만들 때는 그 클래스 유형의 객체를 만들어서 테스트하는 테스트용 클래스를 따로 만들어 보는 것이 좋다. 클래스에서는 덜 구체적인 상위클래스로부터 인스턴스 변수와 메소드를 상속할 수 있다. 프로그램을 실행시킬 때 보면 자바 프로그램이란 결국 다른 객체와 대화를 하는 객체에 불과하다. 더보기