본문 바로가기

Java

(9)
<Java Basics> Chapter 09. 클래스의 기초 9.1 객체 클래스의 기본 개념을 알아보고, 클래스를 통해 객체를 생성하고 사용하는 방법을 알아보자. 자바는 객체지향 언어이다. 프로그램을 단순히 데이터와 처리 방법으로 나누는 것이 아니라. '객체'라는 기본 단위로 나누고 객체의 상호작용으로 프로그래밍하는 방식이다. 자바에서 객체를 만들려면 반드시 클래스를 먼저 만들어야 한다. 먼저 객체를 간단히 정의내리면, 우리가 표현할 수 있는 실제 세계의 모든 사물들을 객체(오브젝트object)라고 한다. 객체는 소프트웨어 분야에서만 사용하는 한정된 용어가 아니다. 이러한 객체는 눈에 보이고 만져지는 '물리적인 객체'와 보이지 않고 만져지지 않는 '개념적인 객체'로 나눌 수 있다. 개념적인 객체 물리적인 객체 동물 개, 고양이, 호랑이, 곰 자동차 소나타, K5,..
<Java Basics> Chapter 08. 계산기 만들기 STEP1 8.1 메뉴 만들기 To Do 01. Chapter 08로 프로젝트를 만들고 MyCalculator 클래스를 만들어 추가한다. 02. 입력 처리에 Scanner 클래스를 사용하겠다. 그리고 선택할 수 있는 메뉴를 보여주는 기능을 메서드로 만들어준다. 그리고 메뉴를 호출해준다. 1. 입력 기능을 사용하기 위해 그대로 적용한다(클래스를 임포트한다). 2. 입력 기능을 사용하기 위해 그대로 적용한다(객체를 생성한다). sc는 변수명이므로 변경해도 된다. 4. 사용자에게 보여줄 메뉴 항목을 작성해 메서드를 만든다. 3. 호출해서 출력한다. 03. 컴파일한 후 실행시켜 메뉴가 잘 출력되는지 확인한다. STEP2 8.2 메뉴 출력 및 사용자 입력 To Do 01. 반복문을 이용하여 메뉴가 계속해서 출력되..
<Java Basics> Chapter 07. 메서드와 변수의 사용 가능 범위 7.1 메서드 정의하기 메서드를 만들고 사용하는 방법과 변수의 사용 가능한 범위를 알아보자. 프로그래밍을 하다 보면 똑같은 기능을 반복적으로 수행하는 코드 부분이 있다. 이렇게 반복 수행하는 코드 부분을 한 뭉치로 묶어서 별도로 빼어 놓을 수 있다. 그리고 이 뭉치에 이름을 붙이고 필요할 때마다 불러 사용할 수 있다. 이렇게 '특정 기능을 수행하는 일련의 코드 블록(뭉치)'을 메서드method라고 말한다. 우리는 이미 메서드를 많이 사용했다. 출력하는 기능을 수행하면서 println(), print(), printf() 메서드를, 입력을 받으며 nextInt(), nextLine(), next() 메서드를 사용했다. 이렇게 자바에서 미리 만들어 제공하는 기능을 사용할 수도 있지만, 직접 만들어 사용할 수..
<Java Basics> Chapter 06. 제어문 6.1 조건문 조건문은 조건식의 결과가 'true인 경우'와 'false인 경우'의 두 가지 흐름을 만들어낼 수 있다. 자바에서는 다음 세 가지 방법으로 조건을 분기시킬 수 있다. if문을 사용한 조건 분기(제어문 사용) 조건 연산자를 사용한 조건 분기(연산자 사용) swtich문을 사용한 조건 분기(제어문 사용) 6.1.1 if문 if문을 사용하여 조건을 분기시키는 방법과 조건 연산자를 사용한 조건 분기 방법은 이미 앞에서 살펴보았다. 다만 if문에서는 다음을 한 번 더 상기해주길 바란다. if (x>1) { .... } ▼ if (true) { .... } 앞에서도 언급했지만 해석하는 습관도 중요하다. x가 1보다 크면 중괄호 안의 내용을 실행한다. ← 이것은 사람의 생각이다. x > 가 1을 비교 ..
<Java Basics> Chapter 05. 콘솔 출력과 입력 5.1 콘솔 출력 앞에서 이미 System.out.println()과 System.out.print()로 출력을 많이 해보았다. 그래서 출력을 간단히 정리하고, 입력을 더 살펴보겠다. 콘솔은 컴퓨터를 대상으로 데이터 입력 및 출력하는 장치를 총칭하는 말이다. 대표적으로 키보드와 모니터가 콘솔 입출력 장치에 해당한다. 자바에서는 화면에 데이터를 출력하는 다양한 기능을 제공하는데, 이런 기능들을 메서드라고 부른다. 메서드 형태는 뒤에 소괄호가 붙어 있다. 모두 System.out과 연결해 사용한다. System.out.println() System.out.print() System.out.printf() 여기서는 이렇게 제공되는 메서드를 사용하기만 하고, 자신만의 메서드를 직접 만드는 방법은 뒤에 나오는 7..
<Java Basics> Chapter 04. 연산자 4.1 산술 연산자 흔히 연산이라고 하면 수학 시간에 배운 사칙연산을 떠올리겠지만, 프로그래밍에서 사용하는 연산은 그외에도 다양한 종류가 있다. 우리가 흔히 생각할 수 있는 산술 연산 외에도 대입 연산, 비교 연산, 증감 연산, 논리 연산 등이 있다. 자바에서 사칙연산 기능을 하는 연산자는 다음과 같다. ▼ 자바 산술 연산자 연산자 설명 사용 예 결과 + 더하기 5 + 2 7 - 빼기 5 - 2 3 * 곱하기 5 * 2 10 / 나누기의 몫 5 / 2 2 % 나누기의 나머지 5 % 2 1 키보드에는 수학 시간에 배운 ×, ÷ 기호가 없기 때문에 위와 같은 기호를 사용한다. 이미 앞에서 다 사용해본 연산자이다. 그런데 왜 수학에서와 달리 나누기 결과로 몫만 나올까? 힌트는 앞에서 배운 자료형의 형변환에 있..
<Java Basics> Chapter 03. 변수, 상수, 자료형의 형변환 3.1 변수 앞에서 배운 변수와 상수의 개념을 확장해본다. 그리고 자료형의 형변환이 무엇인지 알아본다. 변수는 값이 변하는 수를 말한다. 코드에서 변수가 구체적으로 무엇인지와 이름 짓는 방법을 알아보겠다. 3.1.1 변수의 이해 앞에서 살펴본 변수에 대한 설명을 다시 한번 해보겠다. y = x + 1; x값이 2면 y값은 3이 된다. x값이 3이면 y값은 4가 된다. 이처럼 x, y는 대입되는 값에 따라 값이 변한다고 해서 변수라고 했고, 1, 2, 3, 4 등은 이미 정해져 있는 값이라고 해서 상수라고 했다. 그리고 앞에서는 자료형을 배우면서 컴퓨터에서 데이터를 어떻게 메모리에 저장하는지를 살펴보았다. 그러므로 이제 변수에 대해서 조금 더 깊이 알아볼 때가 되었다. int num = 1; 이 코드에 대..
<Java Basics> Chapter 02. 자료형 2.1 진수 계산법 사람이 10진수로 값을 입력해도 컴퓨터는 2진수로 변환해 저장한다. 그래서 자료형을 다룰 때 진수 변환을 알면 편하다. 깊고 어려운 내용을 다루려는 건 아니다. 간단히 진수 계산법을 살펴보고 넘어가본다. 2.1.1 지수 계산 지수 계산하는 방법은 학창 시절 배워 다 알 것이다. 아래 그림과 표와 같다. 컴퓨터는 2진수를 기반으로 데이터를 관리하기 때문에, 복습하는 차원에서 표로 정리해뒀다. 지수 표현 풀이 10진수 정숫값 2⁰ = 1 = 1 2¹ = 2 = 2 2² = 2 x 2 = 4 2³ = 2 x 2 x 2 = 8 ... ... 2⁸ = 256 ... ... 2.1.2 10진수를 2진수로 바꾸기 10진수 11을 2진수로 바꾸려면 1 더 이상 나눌 수 없는 정숫값이 나머지로 나올 ..