Power Java 제4장 자바 프로그래밍 기초.

Slides:



Advertisements
Similar presentations
멘토링 2 주차 장 프로그래밍을 위한 자바의 자료형  값이 변하지 않는 상수  메모리 기억공간인 변수.
Advertisements

명품 JAVA Programming 제 3 장 반복문, 배열, 예외처리.
어서와 Java는 처음이지! 제3장선택과 반복.
제 7주 2015년 1학기 강원대학교 컴퓨터학부 담당교수: 정충교
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
컴퓨터 응용 및 실습 Part1. OOP&Java Programming data type Review
C++ Espresso 제1장 기초 사항.
IntArray[0] int length 5 intArray 객체 제 3 장 반복문, 배열, 예외처리.
어서와 Java는 처음이지! 제1장 기초 사항.
어서와 Java는 처음이지! 제2장 자바 프로그래밍 기초.
7장 배열 ②.
어서와 Java는 처음이지! 제4장 배열.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
Chapter 02 JAVA 프로그래밍 시작하기 01 실무에서 사용하는 JAVA 개발 환경 02 JAVA 프로그램 작성
제14장 원격 메소드 호출 김 기 환. 조 명 휘.
알기 쉽게 해설한 Java 8th edition
Java Presentation 중간 시험2 풀이
어서와 Java는 처음이지! 제1장 기초 사항 IT응용시스템공학과 김형진 교수.
제6장 제어(Control) 6.1 구조적 프로그래밍(Structured Programming)
자바란 무엇인가? JDK의 다운로드 및 설치 방법 Hello, Java 프로그램의 작성 자바 프로그램의 작동 원리
윤 홍 란 제3장 클래스와 객체의 사용-1 윤 홍 란
2주 실습강의 Java의 기본문법(1) 인공지능연구실.
Chapter 02 자바 기본구조 자바 프로그래밍의 기초적인 문법을 소개
제7장 제어구조 I – 식과 문장.
명품 JAVA Essential.
메소드 호출과 힙 원격 메소드 호출 서블릿 엔터프라이즈 자바 빈즈
Java RMI (Remote Method Invocation)
Kasimov C언어 세미나 1st.
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
Power Java 제10장 배열.
제3장 이클립스 사용하기.
명품 JAVA Essential.
명품 Java Programming.
컴퓨터 프로그래밍 기초 - 2nd : scanf(), printf() 와 연산자 -
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
윤 홍 란 4 장 클래스 작성 윤 홍 란
프로그래밍 서울대학교 통계학과 2009년 2학기 컴퓨터의 개념 및 실습 (
DataScience Lab. 박사과정 김희찬 (월)
5장 조건과 반복 ①.
제2장 데이터 및 수식.
2 : 대칭암호화 소제목 : 기본적인 대칭암호화.
자바 5.0 프로그래밍.
5장. JSP 페이지의 스크립트 요소 이 장에서 배울 내용 : JSP페이지를 구성하는 구성요소중 하나인 스크립트요소를 학습하는 장으로 JSP페이지의 스크립트의 3가지 요소인 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression)에 대해.
제1장 서론.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
23강 API - II - 약방의 감초 Random 클래스 - Scanner 및 Sysout - Wrapper 클래스의 이해
제2장 데이터 및 수식.
어서와 Java는 처음이지! 제4장 배열 IT응용시스템공학과 김형진 교수.
DataScience Lab. 박사과정 김희찬 (월)
자바의 신 Volume 1 1부(1~3장) 자바의 신 메인 홈 : 자바의 신 페이스북: 자바의 신 문제 풀이 :
03. 안드로이드를 위한 Java 문법 제목. 03. 안드로이드를 위한 Java 문법 제목.
WAP Java Seminar
Ch.1 Iterator Pattern <<interface>> Aggregate +iterator
메소드와 클래스 정의 및 문제 풀이 Method and Class Define and Problem Solve
프로그래밍 개론 Ⅰ 제 1장 . 서론 ①.
[INA470] Java Programming Youn-Hee Han
컴퓨터공학실습(I) 3주 인공지능연구실.
자바 5.0 프로그래밍.
5장 조건과 반복 ①.
Internet Computing KUT Youn-Hee Han
Java 3장. 자바의 기본 구조 I : 변수, 자료형, 연산자 public class SumTest {
4. 어휘 분석(Lexical analysis)
누구나 즐기는 C언어 콘서트 제2장 기초 사항 IT응용시스템공학과 김형진 교수.
JVM의 구조와 메모리 모델 JVM의 내부 구조 클래스 파일 클래스 로더 메소드(method) 영역 힙(heap) 영역
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express Slide 1 (of 25)
컴퓨터 프로그래밍: 실습 1 제 1장 . 서론.
Java 5장. 객체지향 개념 public class SumTest {
캡슐화 (Encapsulation) 두원공과대학 소프트웨어개발과 이 원 주.
C.
Java의 정석 제 7 장 객체지향개념 II-3 Java 정석 남궁성 강의
Presentation transcript:

Power Java 제4장 자바 프로그래밍 기초

이번 장에서 학습할 내용 자바 프로그램에 대한 기초 사항을 학습 자세한 내용들은 추후에….

HelloWorld.java 프로그램

주석 주석(comment): 프로그램에 대한 설명을 적어 넣은 것

3가지 타입의 주석

클래스 클래스(class): 객체를 만드는 설계도(추후에 학습) 자바 프로그램은 클래스들로 구성된다. 그림 4-1 . 자바 프로그램의 구조

클래스 정의 public 키워드는 Hello 클래스가 다른 클래스에서도 사용가능 함을 나타낸다.

메소드 클래스 = 필드(변수) + 메소드(함수) 메소드(method)는 메소드는 입력을 받아서 작업을 수행하고 결과를 내보내는 작은 기계 메소드는 안에 들어 있는 문장들을 차례대로 실행한 후에 작업의 결과를 외부로 반환 그림 4-2 . 메소드에는 문장들이 들어있고 이들 문장들은 위에서 아래로 차례대로 실행된다.

메소드의 정의 public: 누구나 이용할 수 있음 static: 정적 메소드(9장 부근에서 학습) void: 반환값이 없음 Main: 메소드 이름 String args[]: 매개 변수(메소드가 외부에서 받는 데이터)

용어 설명

문장 문장(statement)은 사용자가 컴퓨터에게 작업을 지시하는 단위이다. 문장들은 메소드 안에 들어 있다. 보통 프로그램의 한 줄이 하나의 문장이 된다. 문장의 끝은 항상 세미콜론(;)으로 끝나게 된다. … main(…) { 문장; …. }

문장은 순차적으로 실행

중간 점검 문제 1. 자바 프로그램의 개발 단위는 ___________이다. 2. ___________은 프로그램에 대한 설명이다. 3. 입력을 받아서 작업을 수행하고 결과를 내보내는 작은 기계로 생각할 수 있는 것은 __________이다. 4. 모든 자바 소스 파일의 확장자는 ___________이다.

Add 예제 #1 300

변수 변수(variable)란 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간

변수에도 여러 가지 타입이 있다. 그림 4-5 변수들은 자신만의 이름을 가지고 있다.

상수 상수(constant)란 그 값이 프로그램이 실행하는 동안 변하지 않는 수 (예) 3.14, 1000, “Hello World!” 그림 4-6. 변수와 상수

변수의 초기화 변수는 위와 같이 연산자를 이용하여 초기화 할 수 있다.

수식 수식(expression): 피연산자와 연산자로 이루어진다. 수식의 결과값을 가진다.

대입 연산자 대입 연산자 == 할당 연산자 == 배정 연산자 변수에 값을 저장하는 연산자 (예) x = 100; 그림 4-7 . =연산자가 변수에 값을 저장하는 연산자이다.

산술 연산자 표 4-1 . 산술 연산자의 요약

산술 연산의 과정 (예) sum = x + y; 그림 4-8 . 산술 연산의 과정: 먼저x과 y에서 값을 가져와서 덧셈연산이 수행되고 그 결과값이 sum에 저장된다.

중간 점검 문제 1. 프로그램에서 데이터를 저장하는 공간은 ____________이다. 2. 변수에 값을 저장하는 연산을 _____________이라고 한다. 3. 실행 도중에 값이 변하지 않는 수를 ___________이라고 한다.

Add2 예제 #2 사용자로부터 두 개의 정수를 받아서 더하는 문제 사용자로부터 숫자를 받을 수 있어야 한다.

Add2 예제 #2

import 문장 Scanner 클래스를 포함시키는 문장 Scanner는 자바 클래스 라이브러리(Java Class Library)의 일종 Scanner는 입력을 받을 때 사용

객체 생성 input은 타입이 Scanner인 변수 new Scanner(System.in)은 Scanner 클래스의 객체(object)를 생성 input은 생성된 객체를 가리킨다. 상세한 설명은 차후에…. 일단 입력을 받으려면 이 문장이 필요하다고 알아두자. Scanner 객체

사용자로부터 입력 Scanner 객체인 input을 이용하여 사용자로부터 정수를 읽어 들이는 문장 input을 통하여 nextInt()라고 하는 메소드를 호출하게 된다. nextInt()에서 반환된 값은 변수 x에 대입된다. 추후에 자세히…. 10 nextInt() Scanner 객체

print() 출력 메소드 println()은 문자열을 출력한 후에 줄을 바꾸는 메소드 첫번째 숫자를 입력하시오:

중간 점검 문제 사용자로부터 값을 입력받으려면 _______________클래스를 사용하는 것이 편리하다. Scanner 클래스에서 사용자로부터 정수를 입력받는 메소드의 이름은 _____________이다. 자바 API 문서에서 Scanner 클래스의 메소드 중에서 앞에 next가 붙은 메소드들을 조사하여 보자.

연봉 계산 문제 10년 동안 월급을 모두 저금할 경우, 얼마나 모을 수 있을까?

원의 면적 구하기 사용자로부터 원의 반지름을 입력받고 이 원의 면적을 구한 다음, 화면에 출력한다.

원의 면적 구하기

중간 점검 문제 1. 사용자가 입력하는 원화를 달러화로 계산하는 프로그램은 작성하여 보자. 달러에 대한 원화 환율(예를 들어 1달러는 1392.83원)은 실수형 변수에 저장하고 사용자로부터는 받는 원화는 정수 변수에 저장한다. 원화를 환율로 나누어서 사용자가 입력한 원화가 몇 달러에 해당하는지를 계산한다.

오류 컴파일 오류(compile-error) 실행 오류(run-time error) 논리 오류(logical error)

컴파일 오류 컴파일 오류는 컴파일시에 발견되는 오류 문법 규칙에 따르지 않으면 구문 오류(syntax error) 계산식에서 호환이 되지 않는 서로 다른 타입의 데이터가 포함된 계산을 시도하는 경우에는 의미 오류(semantic error)

실행 오류 실행 오류는 프로그램이 실행되는 도중에 발생하는 오류 (예) 0으로 나누려고 시도 자바에서는 많은 실행 오류들을 예외(exception)를 사용하여 처리

논리 오류 논리 오류는 컴파일되고 실행도 되지만 의도하지 않는 결과를 발생하는 경우 (예) 값이 예상과는 다르게 잘못 계산되는 경우 디버깅(debugging): 논리 오류를 찾고 고치는 과정

중간 점검 문제 1. 컴파일시에 오류가 없는데도 원하는 결과가 나오지 않는다면 _________오류가 있는 것이다. 2. 만약 실행 도중에 0으로 나누었다면 _____________오류가 발생한다.

LAB 직사각형의 둘레와 면적을 구하는 프로그램을 작성하여 보자. 직사각형의 가로와 세로를 각각 w와 h라고 하면 직사각형의 면적은 w*h가 되고 둘레는 2*(w+h)가 된다. h w

HINT 필요한 변수는 w, h, area, perimeter라고 하자. 변수의 자료형은 실수를 저장할 수 있는 double형으로 하자. area = w*h; perimeter = 2*(w+h);

SOURCE 사각형의 넓이: 50.0 사각형의 둘레: 30.0

도전문제 클래스의 이름을 Box에서 Rectangle로 변경하면 어떤 일이 발생하는가? 한번의 println() 호출로 변수 perimeter와 area의 값이 동시에 출력되도록 변경하라. println()과 print()의 차이점은 무엇인지 실험하여 보라. w와 h의 값을 사용자로부터 받도록 변경하여 보자. Scanner 클래스를 사용한다.