본문 바로가기

분류 전체보기88

현타 나는 내가 머리가 좋은 줄 알았다. 근데 학원 다녀보니 빡대가리였다. 오늘부터 두시에 잔다. 여유부릴시간 없다.. 2022. 10. 4.
이어서 #06-01 콘솔 입출력 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 이번에는 콘솔 입출력에 대해서 알아보자. 프로그램을 실행했더니 다음과 같은 문자열이 출력되었다고 가정해 보자. 생년월일(YYYY/MM/DD)을 입력해 주세요 : 이렇게 사용자에게 위와 같은 문자열을 보여주는 것이 바로 콘솔 출력이고 위 질문에 사용자가 답변을 입력하는 것을 콘솔 입력이라 한다. === 콘솔이란 콘솔은 환경에 따라 변경될 수 있다. 만약 이 프로그램을 인테리제이에서 실행했다면 인텔리제이의 콘솔창이 콘솔이 될 것이.. 2022. 9. 15.
#05-09 추상클래스 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 추상클래스(Abstract Class)는 인터페이스의 역할을 하면서 클래스의 기능도 가지고 있는 자바의 돌연변이 같은 클래스이다. 혹자는 추상클래스는 인터페이스로 대체하는 것이 좋은 디자인이라고도 얘기한다. 추상클래스에 대해서 알아보기 위해 우리가 작성했던 Predator 인터페이스를 다음과 같이 추상클래스로 변경해 보자. === 객체지향 프로그래밍 챕터에서 사용되는 예제는 모두 연속되므로 앞에서부터 순서대로 예제를 따라해야 .. 2022. 9. 15.
#05-08 다형성 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 객체지향 프로그래밍의 특징 중에는 다형성(폴리모피즘, Polymorphism)이 있다. 도대체 다형성은 무엇이고 이게 왜 필요한 걸까? 예제를 통해 차근차근 알아보자. === 객체지향 프로그래밍 챕터에서 사용되는 예제는 모두 연속되므로 앞에서부터 순서대로 예제를 따라해야 한다. === 이번 챕터에서 작성한 Sample.java 파일에 다음과 같은 Bouncer(경비원) 클래스를 추가해 보자. Interface Predator .. 2022. 9. 15.
#05-07 인터페이스 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 인터페이스(Interface)는 초보 개발자를 괴롭히는 단골손님이다. 인터페이스에 대한 개념없이 코드로만 이해하려고 하면 곧 미궁에 빠지게 된다. 이렇게 이해하기 힘든 인터페이스는 도대체 왜 필요하게 된 걸까? 이번 장에서는 인터페이스에 대해서 예제를 통해 차근차근 알아보자. 1. 인터페이스는 왜 필요한가? 2. 인터페이스 작성하기 3. 인터페이스의 메소드 4. 인터페이스의 핵심과 개념 5. 디폴트 메서드 6. 스태틱 메서드 .. 2022. 9. 8.
#05-06 생성자 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 이번에는 클래스의 생성자(Constructor)에 대해서 알아보자. 1. 생성자(Constructor) 2. 디폴트(default) 생성자 3. 생성자 오버로딩 1. 생성자(Constructor) 다음 클래스들은 이전 챕터들을 진행하며 만든 클래스들이다. 만약 아래의 클래스가 현재 만들어지지 않았다면 작성한 후에 따라해 보자. Sample.java class Animal { String name; void setName(Str.. 2022. 9. 8.
#05-05 상속 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 자바에는 자식 클래스가 부모 클래스의 기능을 그대로 물려받을 수 있는 상속(inheritance) 기능이 있다. 예제를 통해서 자바의 상속에 대해서 자세히 알아보자. 1. 상속 2. 부모 클래스의 기능을 확장 3. IS-A 관계 4. 메소드 오버라이딩 (Method overriding) 5. 메소드 오버로딩 (method overloading) 6. 다중 상속 1. 상속 이전 챕터에서 작성했던 Animal 클래스를 상속하는 D.. 2022. 9. 5.
?? #05-04 Call by value - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 메소드에 값(primitive type)을 전달하는 것과 객체(reference type)를 전달하는 것에는 큰 차이가 있다. 이것은 매우 중요하기 때문에 이전에 잠깐 언급했지만 다시 한 번 자세히 알아보자. 결론부터 얘기한다면 메소드에 객체를 전달할 경우 메소드에서 객체의 객체변수(속성) 값을 변경할 수 있다. 다음의 예제를 보자. class Updater { void update(int count) { count++; } .. 2022. 9. 5.
?? #05-03 메소드 (Method) - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 다른 프로그래밍 언어에서는 함수라는 것이 별도로 존재한다. 하지만 자바는 클래스를 떠나 존재하는 것은 있을 수 없기 때문에 함수는 따로 존재하지 않고 클래스 내에 존재한다. 자바는 이러한 클래스 내의 함수를 메소드라고 부른다. === 보통 함수와 메소드가 공존하는 언어(예: 파이썬)에서는 두 개를 구분하여 말하기도 하지만 자바는 메소드와 함수를 구분하여 말하지 않는다. 다만 자바에서 사용되는 함수의 정확한 명칭은 메소드이다. .. 2022. 9. 5.
#05-02 클래스 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 이번 장에서는 클래스에 대해서 자세히 알아보자. 여기서는 클래스에 대한 개념적인 설명을 하기보다는 가장 간단한 클래스를 작성하는 것에서부터 시작하여 클래스의 규모를 키워가는 방식으로 클래스를 설명해 볼까 한다. 자, 시작해보자. 1. 객체에 대하여 2. 객체 변수 (instance variable) 3. 메소드 4. 객체 변수는 공유되지 않는다. 1. 객체에 대하여 Animal 클래스를 다음과 같이 Sample.java 파일에.. 2022. 9. 3.
#05-01 객체지향 프로그래밍이란? - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 여러분 모두 계산기를 사용해 보았을 것이다. 계산기에 숫자 3을 입력하고 + 기호를 입력한 후 4를 입력하면 결과값으로 7을 보여 준다. 다시 한 번 + 기호를 입력한 후 3을 입력하면 기존 결과값 7에 3을 더해 10을 보여 준다. 즉 계산기는 이전에 계산한 결과값을 항상 메모리 어딘가에 저장하고 있어야 한다. 이런 내용을 자바 코드로 구현해 보자. 계산기의 "더하기" 기능을 구현한 코드는 다음과 같다. === 여기서 다루는.. 2022. 9. 2.
#05 객체지향 프로그래밍 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : 자바는 객체지향(Object Oriented) 프로그래밍 언어이다 객체지향에는 클래스, 객체, 인스턴스, 상속, 인터페이스, 다형성, 추상화 등의 많은 개념들이 존재한다. 개념을 늘어놓고 설명을 해 나간다면 지루하기도 하고 도대체 어디에 써 먹을 수 있는 건지 애매하기 때문에 여기서는 주로 예제위주의 설명으로 자바의 객체지향적 특징을 알아볼 것이다. 아마도 자바를 배우는 데 가장 큰 고비가 바로 이 객체지향 부분일 것이다. 생.. 2022. 9. 2.
#04-05 for each 문 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : for each는 J2SE 5.0부터 추가되었다. for each라는 키워드가 따로 있는 것은 아니고 동일한 for를 이용한다. 하지만 조건식 부분의 문법이 조금 다르다. 다음은 이전에 공부했던 평범한 for문이다. String[] numbers = {"one", "two", "three"}; for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); .. 2022. 9. 2.
#04-04 for 문 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : for문도 while문과 마찬가지로 문장을 반복해서 수행해야 할 경우에 사용한다. 1. for문의 구조 2. for문의 예제 3. for와 continue 4. 이중 for문 1. for문의 구조 for문은 예제를 통해서 알아보는 것이 가장 쉽다. 예제를 따라해 보도록 하자. 예 1) 전형적인 for문 String[] numbers = {"one", "two", "three"}; for (int i=0; i = 60) { Sy.. 2022. 9. 1.
#04-03 while 문 - <점프 투 자바> 출처 : https://wikidocs.net/book/31 점프 투 자바 **초보 프로그래머를 위한 자바 입문서** 이 책은 문법위주의 지식보다는 이해중심의 지식을 전달하는 것을 주 목적으로 한다. 예를 들어 자바에서 잘 파악하기 힘든 개념 ... wikidocs.net 필사 : while은 문장을 반복해서 수행해야 할 경우에 사용한다. 1. while문의 기본 구조 2. 무한루프(Loop) 3. while문 빠져 나가기(break) 4. while문 조건문으로 돌아가기(continue) 1. while문의 기본 구조 다음은 while문의 기본 구조이다. while(조건문) { ; ; ; ... } 조건문이 참인 동안 while문의 수행할 문장들을 반복하여 수행한다. "열 번 찍어 안 넘어 가는 나무 .. 2022. 9. 1.