JAVA 프로그래밍 2장 자바의 데이터타입.

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
Part 03 상수, 변수, 자료형 ©우균, 창병모 © 우균, 창병모.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
/ 4강_연산자 4-1 할당연산자 4-2 사칙연산자 및 나머지 연산자 4-3 자동증감 연산자 4-4 비교 연산자 4-5 논리 연산자 4-6 부정 연산자 4-7 복합대입 연산자 /
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
최윤정 Java 프로그래밍 클래스 상속 최윤정
제 9 장 구조체와 공용체.
C 8장. 포인터 #include <stdio.h> int main(void) { int num;
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
Lesson 5. 레퍼런스 데이터형.
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
Lesson 6. 형변환.
5장. 참조 타입.
제 3장. C보다 나은 C++ II.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
자바 5.0 프로그래밍.
23장. 구조체와 사용자 정의 자료형 2.
3장 자바의 기본문법(2).
2주차: 변수, 수식, Control Flow.
Java 6장. 클래스 : 속성 public class SumTest {
Java 기초 (Java 프로그램의 기본 구조)
자바 5.0 프로그래밍.
11장. 1차원 배열.
C 8장. 포인터 #include <stdio.h> int main(void) { int num;
C#.
JA A V W. 03.
C 언어 교육 02 주차 – scanf & 반복문과 조건문 교육부장 조하정.
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
Lesson 4. 수식과 연산자.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Lesson 2. 기본 데이터형.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
연산자 (Operator).
에어 조건문.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
자바 5.0 프로그래밍.
자바 가상 머신 프로그래밍 Chap 10. 자바 컴파일링의 안쪽 ② Pslab 오민경.
Chapter 02. 자바 기본 문법.
8주차: Strings, Arrays and Pointers
6장 JSP 페이지의 연산자, 제어문 및 한글처리 이장에서 배울 내용 : JSP페이지에서 프로그램 로직코드를 원활히 수행할 수 있도록 제공되는 연산자와 제어문에 대해 학습한다. 또한 한글처리를 전혀 지원하지 않는 톰캣을 위한 몇 가지 한글처리를 위한 코드에 대해 알아본다.
CHAP 21. 전화, SMS, 주소록.
객체기반 SW설계 팀활동지 4.
2부 기본 구조 2부에서는 자바 언어의 기본구조인 변수, 자료형, 연산자, 선택 및 반복논리, 배열 등에 관해 설명합니다
2장 PHP 기초 PHP의 시작과 끝을 이해한다. 주석문에 대하여 이해한다. echo 문을 이용하여 화면에 출력하
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
Lecture 02 프로그램 구조 및 문법 Kwang-Man Ko
제 8장. 클래스의 활용 학기 프로그래밍언어및실습 (C++).
Chapter 10 데이터 검색1.
16장. 변수, 연산자, 사용자 정의 함수 변수 배열과 객체 연산자 함수.
Numerical Analysis Programming using NRs
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
2.가상머신의 탐험 도구, Oolong에 대하여 ps lab 김윤경.
 6장. SQL 쿼리.
2장 자바의 기본문법(1).
13. 포인터와 배열! 함께 이해하기.
Pointers summary.
7 생성자 함수.
3장 자바의 기본문법(2).
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
Presentation transcript:

JAVA 프로그래밍 2장 자바의 데이터타입

학습목표 이장에서는 자바 프로그래밍을 하기 전에 익혀야할 자바의 기본 문법부분으로 자바의 데이터타입과, 키워드 그리고 자바의 연산자들에 대해 학습한다. 목차 Section1 자바 식별자(identifier)와 키워드(keyword) Section2 자바의 데이터타입(Data type) Section3 자바 연산자(Operator) JAVA 프로그래밍

2장-자바의 데이터타입 Section1 자바 식별자(identifier)와 키워드(keyword) 자바의 클래스명, 메소드명, 변수명에 사용되는 식별자와 자바의 키워드에 대해 학습한다. 자바에서 사용되는 데이터 타입들에 대해서 학습한다. Section2 자바의 데이터타입(Data type) 자바에서 제공하는 대입, 증감, 논리, 비트, 조건연산자등에 대해서 학습한다. Section3 자바 연산자(Operator) JAVA 프로그래밍

1. 자바 식별자(identifier)와 키워드(keyword) (1/3) 클래스명, 메소드명, 멤버변수명, 자동변수명등에 적용. 자바 식별자는 길이에는 제한이 없고 첫 글자는 반드시 영문자,_,$로 시작해야 한다. 식별자명의 첫 글자로 $를 사용할 수 있으나, 이것은 컴파일러에게 자바 식별자명을 생성하라는 의미로 사용되기 때문에 사용하지 않는 것이 좋다. 자바는 대소문자를 구별하므로 주의해야한다. JAVA 프로그래밍

1. 자바 식별자(identifier)와 키워드(keyword) (2/3) 클래스명의 작성규칙 클래스명의 첫 글자는 대문자로 시작하고 나머지는 소문자로 작성하고, 단어가 구별될 때는 다음 단어의 시작은 대문자로 시작한다. - ex) HelloWorld, Bank,… 메소드명 및 변수명 작성규칙 메소드명과 멤버변수, 자동변수의 경우 첫 글자는 소문자로 시작해서 단어가 구별될 때 다음 단어의 시작이 대문자로 시작된다. - ex) idCode, checkId(),… 자바코드는 유니코드(unicode)로 이루어져 있기 때문에 한글이름으로 된 클래스명, 메소드명, 인스턴스변수, 자동변수의 사용이 가능하다. JAVA 프로그래밍

1. 자바 식별자(identifier)와 키워드(keyword) (3/3) 자바시스템이 어떠한 목적으로 점유해서 사용하는 단어들이다. 따라서 이들 자바 키워드를 자바 식별자로 사용해서는 안 된다. 자바 키워드는 모두 소문자로 이루어져 있다. 대문자로 이루어져 있는 키워드는 없다. JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (1/6) 기본데이터타입(primitive data type) (1/2) 자바는 byte, short, int, long, float, double, char, boolean등의 기본 데이터타입을 제공한다. 기본데이터타입을 갖는 변수들은 해당변수의 값으로 어떠한 데이터값을 갖는다. ex) int a=10; 기본데이터타입은 변수의 값으로 순수한 데이터값을 가진다 기본타입에 크기를 제공하는 이유는 어떤 변수에 저장할 수 있는 데이터의 크기를 알아야 적절한 타입의 변수를 선언해서 데이터를 저장할 수 있기 때문이다. JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (2/6) 기본데이터타입(primitive data type) (2/2) 타입 크기(byte) 자료범위 기본값 byte 1byte -128 ~ +127 short 2byte -32,768 ~ +32,767 int 4byte -2,147,243,648 ~ +2,147,243,647 long 8byte -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 float -3.40292347E+38 ~ +3.40292347E+38 double -1.79769313486231570E+308 ~ +1.79769313486231570E+308 char '\u0000' ~ '\uFFFF' boolean 1bit true or false false JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (3/6) 레퍼런스 데이터타입(reference data type) (1/4) 자바에는 C언어와 같은 포인터가 없다. 대신 객체를 생성해서 객체의 레퍼런스로 생성된 객체에 접근하는 방법을 쓴다. 기본데이터타입(int, float, char...)은 변수를 선언하면 바로 메모리할당을 받는다. 그러나 레퍼런스 타입의 변수는 new 키워드를 사용해서 객체를 할당하기 전까지는 메모리가 할당되지 않는다. 레퍼런스 변수의 기본 값은 null이다. JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (4/6) 레퍼런스 데이터타입(reference data type) (2/4) 예시2-01) 1  ToolSystem ts1, ts2; //ToolSystem 클래스타입의 레퍼런스 변수 ts1, ts2선언 2  int x=20; //정수형 변수 x의 초기값은 20 3  ts1 = new ToolSystem(); //ToolSystem클래스를 사용해서 객체생성, 메모리 할당을 받는다. 4 //ts1은 생성된 객체를 가리키는 레퍼런스 변수이다. 5 //ToolSystem()클래스의 메소드나, 인스턴스 변수를 접근할 때ts1레퍼런스를 사용해서 접근한다. 6  ts2 =ts1; //ts1레퍼런스가 가지고 있는 객체의 주소값을  ts2에 넘겨준다. 결론적으로 ts1과 ts2는 같은 객체를 가리킨다. JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (5/6) 레퍼런스 데이터타입(reference data type) (3/4) 문자열변수의 선언은 String을 사용해서 한다. String은 클래스이다. 따라서 String클래스를 사용해서 문자열 변수를 선언하면 String객체가 생성되므로 결론적으로 문자열변수는 레퍼런스 타입 변수가 된다. 또한 String 클래스는 내용을 변경할 수 없다. String 클래스에 사용되는 '+'연산자의 경우 두개의 문자열을 결합해서 하나의 새로운 문자열을 생성하는 것이므로 내용이 변경되는 것이 아니다. JAVA 프로그래밍

2. 자바의 데이터타입(Data type) (6/6) 레퍼런스 데이터타입(reference data type) (4/4) String str; str="Hello" ; String str; str="Hello" ; str="Hello World"; 예시2-03) String str1 , str2; str1="hi" str2="hi" JAVA 프로그래밍

3. 자바 연산자(Operator) (1/8) 자바의 연산자들은 산술연산자, 관계연산자, 논리연산자 , 비트연산자,  shift연산자, 증감연산자, 조건연산자, 대입연산자들이 있다.  산술연산자: * ,  /  , % , + ,  -  관계연산자: < ,  >, <= , >=  논리연산자: &&, || , !  비트연산자: & , | , ^  shift연산자: << ,  >> , >>>  증감연산자: ++ , --  조건연산자: ?:  대입연산자: = , += ,  -= ,  *= ,  /= ,  %= JAVA 프로그래밍

3. 자바 연산자(Operator) (2/8) 자바 연산자 우선순위(priority) 연산자 연산순서 () 왼쪽 -> 오른쪽 ++   --   +  -   ~  !   (cast) 오른쪽 -> 왼쪽 *   /  % +   - <<   >>  >>> <   >  <=  >=  instanceof ==  != & ^ | && 왼쪽-> 오른쪽 || ?: = +=  -=  *=  /=  %= JAVA 프로그래밍

3. 자바 연산자(Operator) (3/8) 대입연산자(= , += , -= , *= , /= , %=) 대입연산자(= , += ,  -= ,  *= ,  /= ,  %=) 대입연산자는 연산의 결과를 변수에 대입할 때 쓰는 연산자이다.  대입연산자의 가장 대표적인 연산자 "="은  같다는 의미가 아니라, assign(대입)의 의미이다. 대입 연산자의 규칙은 다음과 같다. 변수 = 상수 또는 수식 또는 변수 a = 5; JAVA 프로그래밍

3. 자바 연산자(Operator) (4/8) 증감연산자(++,--) 자바는 C언어처럼 1증가 ,또는 1감소를 위한 증감연산자를 제공한다. 1증가 시는 ++, 1감소 시는 --이다. 만일 변수 a가 1만큼 증가해야 한다면 아래의 수식 셋중 하나를 사용할 것이다. a=a+1; a+=1; a++; 세 개의 수식의 결과는 같으나 처리속도는 a++가 가장 빠르고 다음이 a+=1이고 가장느린 것이 a=a+1이다.   ++a(전증가), --a(전감소) 를 사용하면 변수에 1증감 후에 변수의 새로운 값이 수식구문에 사용된다. a++(후증가),  a--(후감소)를 사용하면 수식의 구문을 처리한 후에 변수의 값이 1증감된다. JAVA 프로그래밍

3. 자바 연산자(Operator) (5/8) 논리연산자(&&, ||, !) 논리연산자 &&와 ||는 숏서킷 로직(short circuit logic)을 사용한다.  숏서킷 로직(short circuit logic)은 처음 항의 검사결과가 전체의 결과를 결정하면 나머지 항은 검사하지 않는다. 논리연산자 기호 의미 AND && 둘 다 참(True)일 때만 참(True)이다. OR || 둘 중 하나만 참(True)이면 참(True)이다. NOT ! 참(True)은 거짓(False)으로, 거짓(False)은 참(True)으로 바꿈 JAVA 프로그래밍

3. 자바 연산자(Operator) (6/8) 비트연산자(&&, ||, !) 비트연산자는 기존의 연산이 바이트연산 체계인 것에 반해서 연산의 주체가 비트로 바뀌는 것이다. 그러나 단순히 참, 거짓을 비교할 때는 비트연산자(&,|)는 논리연산자(&&,||)와 같은 의미로 쓰인다. 비트 연산자는 숏서킷 로직(short circuit logic)을 사용하지 않는다. 따라서 첫 항에서 결과가 결정이 되어도 나머지 항을 검사한다. AND & 둘 다 참(True)일 때만 참(True)이다. OR | 둘 중 하나만 참(True)이면 참(True)이다. XOR(Excusive OR) ^ 둘의 상태가 서로 다를 때만참(True)이다. JAVA 프로그래밍

3. 자바 연산자(Operator) (7/8) 조건연산자(?:) ==연산자와 equals() 조건연산자는 (조건식) ? 참 : 거짓 의 형태로 이루어져 있다. 조건식을 만족하면 참을 실행하고 만족하지 못하면 거짓을 실행한다. (5>7) ? a=1 : a=2; 일때 a=2가 된다. ==연산자와 equals()    "=="연산자는 두 변수의 값이 같은가를 비교하는 것이고, equals()메소드는 두 객체의 내용이 같은가를 비교하는 것이다. "=="연산자는 기본 데이터타입과 레퍼런스 타입에 적용할 수 있고, equals()메소드는 레퍼런스 타입에만 적용이 가능하다. JAVA 프로그래밍

3. 자바 연산자(Operator) (8/8) instanceof 객체의 상속관계여부를 알아볼 때 사용하는 연산자로 상속관계여부를 boolean형태로 리턴한다. 상속관계가 있으면 true, 없으면 false값을 리턴한다. JAVA 프로그래밍