[JAVA 기초부터 훑어보기]04. 자바 프로그래밍 기초

2023. 1. 12. 13:00JAVA(자바)

1. 주석문

- 주석문은 코드의 설명을 적어놓는 곳이다. 

- 컴파일러는 주석문을 무시하고 주석문에는 3가지 종류가 있다

/* text */ /*에서 */까지가 주석으로서 컴파일 시에 무시된다
/** documentation */ /**에서 */까지가 주석으로서 컴파일 시에 무시되는 것은 같지만 선언문 앞에만 사용할 수 있고 JDK에 포함된 javadoc 프로그램이 /**에서 */까지의 내용을 가지고 주석을 추출하여 자동적으로 소스를 설명하는 HTML 문서를 만들어준다
// text //에서 줄의 끝까지가 무시된다

 

2. 클래스 정의

- 객체 지향 언어에서는 프로그램 개발의 단위가 클래스

- 하나의 클래스 안에는 여러 개의 메소드가 포함될 수 있으며, 하나의 메소드 안에는 여러 개의 문장이 포함될 수 있다

- public 키워드는 뒤에 나오는 클래스가 다른 클래스에서도 사용 가능함을 나타낸다(전역)

 

3. 메소드

(1) 정의

- 메소드는 프로그램이 해야 하는 작업을 적어놓는 곳이다

- 메소드는 안에 있는 문장들을 차례대로 실행한 후에 작업의 결과를 외부로 반환할 수 있다 

- 입력을 받아서 작업을 수행하고 결과를 내보내는 작은 기계로 생각할 수 있다

 

(2) main 메소드 

- main() 메소드는 특별한데 이 메소드에서 자바 프로그램의 실행이 시작된다(다른 모든 메소드는 main() 메소드로부터 호출된다)

- public, static, void는 모두 main() 메소드를 수식하는 수식어이다.

- main() 메소드는 String args[]라고 하는 매개변수를 가진다

 

(3) 매개변수

- 외부의 데이터를 메소드로 전달하는 수단

- String은 그 데이터의 타입이 문자열이라는 것을 나타낸다

- 명령어 창에서 입력된 데이터들을 자바 어플리케이션으로 전달하는 역할을 함

 

4. 문장

(1) 정의

- 사용자가 컴퓨터에게 작업을 지시하는 단위

- 프로그램을 이루는 가장 기본적인 단위가 된다

- 문장의 끝은 항상 세미콜론(;)으로 끝나게 된다

 

(2) 규칙

- 메소드 안의 문장들은 위에서 아래로 순차적으로 실행된다

 

5. 변수

(1) 정의

- 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간이다

 

(2) 변수의 특징

- 변수는 어떤 데이터를 저장하느냐에 따라 여러가지 타입이 존재

- 변수들은 자신만의 이름을 가지고 있다

 

6. 상수

(1) 정의

- 그 값이 프로그램이 실행하는 동안 변하지 않는 수 또는 변경 불가능한 수를 의미한다

 

7. 수식

(1) 정의

- x+y와 같이 변수, 상수, 연산자 등으로 구성된 식을 수식이라고 한다

- 일반적으로 상수나 변수, 연산자의 조합으로 이루어진다

- 상수나 변수만도 수식이라고 한다

 

8. 연산

(1) 대입 연산

- 자바에서는 "="를 대입 연산자라고 부른다 

- "="의 좌변은 값을 저장할 수 있는 변수가 위치하고 우변에는 저장할 값을 계산하는 수식이 위치

 

(2) 산술 연산

- 산술 연산자의 종류는 아래와 같다

연산 연산자 자바 수식 수학에서의 기호
덧셈 + x+y x+y
뺄셈 - x-y x-y
곱셈 * x*y xy
나눗셈 / x/y x/y 또는 x÷y
나머지 % x%y x  mod y

 

9. import 문장

import java.util.Scanner;                                         //Scanner 클래스 포함

- 위의 문장은 입력 기능을 가지고 있는 클래스를 포함시키는 문장

- 다양한 기능을 가지는 클래스들을 제공하는데, 이들 클래스들은 패키지 단위로 그룹핑 되어있는데 이런 패키지들을 자바 클래스 라이브러리라고 부른다

 

10. 객체 생성

Scanner input = new Scanner(System.in);

- 변수를 선언하면서 초기화하는 문장

- Scanner는 데이터를 읽을 수 있는 기능을 가지고 있는 클래스로서 사용하려면 Scanner 타입의 변수를 생성하여야 한다

- new Scanner(System.in)은 Scanner 클래스의 객체를 생성하는 문장

 

11. 사용자로부터 입력

x = input.nextInt();                          //사용자로부터 첫 번째 정수를 읽는다.

- Scanner 객체인 input을 이용하여 사용자로부터 정수를 읽어들이는 문장

- input을 통해 nextInt()라고 하는 메소드를 호출하게 됨

- nextInt()는 사용자로부터 정수를 입력받아서 변수 x에 대입한다 만약 실수를 입력받으려면 nextDouble()이라는 메소드를 사용하면 된다.

 

12. 출력메소드    

System.out.print("첫 번째 숫자를 입력하시오: ");                             //입력 안내 출력

- 메소드 이름이 println()에서 print()로 변경되었다 println()은 문자열을 출력한 후에 줄을 바꾸는 메소드이고, print()는 문자열 출력 후에 줄을 바꾸지 않는다. 여기서는 사용자가 같은 줄에 숫자를 입력하기를 원하기 때문에 print()를 사용하였다. 

 

13. 오류

(1) 컴파일 오류

- 컴파일 시에 발견되는 오류

- 컴파일러는 프로그램이 해당 프로그래밍이 언어의 정확한 문법을 사용하고 있는지를 검사한다

 

(2) 구문 오류 

- 문법 규칙에 따르지 않는 문장을 발견하면 컴파일러가 구문 오류를 화면에 표시한다

 

(3) 의미 오류 - 계산식에서 호환이 되지 않는 서로 다른 타입의 데이터가 포함된 계산을 시도하는 경우