본문 바로가기

Java

java - CLASS, 데이터 타입, 리터럴 종류, 형변환

19.11.19. CLASS, 데이터 타입, 리터럴 종류, 형변환

베이직자바

2019-11-21 00:53:49


프로그램 : 데이터를 가지고 목적에 맞는 처리를 하는 것.

두 가지로 이루어져 있다.

1. 데이터                         2. 처리

 

클래스 : 자바를 구성하는 프로그램으로, 데이터와 처리 내용의 집합.

패키지 : 클래스의 묶음.

 

-클래스

이클립스의 맨 윗줄, 현재 펼쳐있는 클래스가 어떤 폴더에 위치해 있는지

위치를 선언해 주어야 한다. 

선언 : 사용하고자 하는 것의 종류와 이름을 컴퓨터에게 알려주는 것.

이클립스에서 클래스 선언 아래에는 main 이라는 메서드가 적혀있다.

메서드 : 처리 내용. 기능, 처리.

처리할 데이터는 변수에 담겨져있다.

변수 : = 데이터

클래스는 변수와, 메서드. 두 가지로 구성된다.

 

-변수

하나의 데이터를 저장할 수 있는 메모리 상의 공간.

 

-메서드

main mthod :

자바로 이루어진 프로그램에서 가장 먼저 실행되는 곳. 

메서드가 아무리 많아도 메인 메서드부터 실행된다.

그리고 메인 메서드가 끝나면 프로그램이 종료된다. 

프로그램의 시작과 끝.

'main' 을 치고 스페이스바를 누르면 메인 메서드가 만들어진다.

 

{} 블럭 이라고 부름. 블럭이 시작되면 tab 키로 한 칸을 띄워서 계층을 꼭 표시해주자.

코드들은 위에서 아래로, 왼쪽에서 오른쪽으로 실행됨.

코드들은 모두 메서드 안에 있어야 한다. 변수만 메서드 밖에 있기 가능.

 

키워드, 예약어 = 진한 글씨로 표시.

자바에서 이미 사용하고 있는 단어로 어떠한 기능을 가지고 있다.

진한 글씨가 아닌 것은 대부분 이름이라고 생각하면 된다. 클래스, 변수 메서드 등의 이름.

 

-주석

한 줄 주석 : ctrl + shift + c

범위 주석 : ctrl + shift + / ( 해제는 \)


데이터로 올 수 있는 종류가 자바에 정의되어 있다.

 

▶사용 가능한 기본형 데이터의 종류(=타입).

- 정수 : 소수점이 없는 숫자. : byte, short, int, long.

네 가지의 크기가 다르다. 표현 가능 범위가 다름. 작은 범위의 수만 사용할 거면 작은 타입을,

큰 게 필요하면 큰 크기의 타입을 선택해 사용하면 된다.

  *우리가 주로 사용할 것은 int.


- 실수 : 소수점이 있는 숫자. : float, double

둘 다 표현할 수 있는 범위가 굉장히 크다.

모르는 단위의 숫자까지. 조,경, 해 이상의 단위까지 표현하기 위해서 가 아니라

정확도를 위해서임. 저엉화악하게.  double 이 float 보다 정확하다.

 

-문자 : char = 챠 = 캐릭터의 줄임말이다. 한 가지 타입.

문자 하나를 의미. 딱 하나.

 

-논리 : boolean

참, 거짓을 말한다. true, false  두 가지 범위가 있음.

 

이렇게 총 8가지. 

 

▶ 기본형 데이터 타입의 사용

1. 어떤 종류의 데이터를 사용할 것인지 선택.

2. 이름 짓기.

*변수, 클래스 등 명명규칙이 있다.

-대소문자 구분, 길이 제한 X

-예약어, 키워드 사용 X

-특수문자는 _,$ 만 가능

--클래스 이름의 첫 글자는 항상 대문자

--여러 단어로 이루어진 이름은 단어의 첫 글자를 대문자.

--상수의 이름은 모두 대문자. 여러 단어로 이루어진 경우_로 구분

--변수는 소문자만 사용.

 

-변수 선언 방법 : 데이터 타입 (+) 변수 이름

   int pipi;

-데이터 타입을 적으면 메모리가 생긴다. 선언 이후에는 변수의 값이 아닌 이름으로 사용한다.

-변수에 데이터를 담을 때에는 = 을 사용한다. 타입에 맞는 값만을 저장할 것.

   pipi = 30;

-변수 선언 후 처음으로 값을 저장하는 것을 '초기화' 라고 부른다.

-값은 프로그램에서는 리터럴이라 부름.

 

▶기본형이 아닌 데이터 타입. = 참조형 타입.

-대표적으로 String 이 있다. 

여러 개의 문자를 편리하게 사용하기 위한 클래스. 

위 기본형 데이터 타입과 다른 타입이고, 앞글자가 대문자다.

*얘도 하나의 클래스임. 클래스 안에 문자 여러 개를 저장할 수 있는 변수들이 있고,

변수를 조작할 수 있는 여러 개의 메서드가 있을 것이다.

이것들을 묶어놓은 것이 String 이라는 클래스이다. 

문자열을 다룰 때 쓰고, "" 큰 따옴표로 감싸 진다. 문자가 있어도, 없어도 문자열로 취급.

(char 는 문자가 꼭 1개 있어야 함. 없어도 안됨.)

 

-모든 클래스들도 참조형 타입.

 

-특징 : 값이 변수에 저장되지 않고 따로 저장공간을 가지며,

          따로 분리된 그 저장공간의 주소가 변수에 저장된다.

          참조형 타입의 변수 크기는 4byte.

 

-사용방법

String _String = new String("abcd");

 

하지만 String은 아주 자주 쓰이는 애여서 얘만

_String = "1234";

이렇게 사용하기 가능.

 

▶리터럴의 종류

숫자 : 0, 10, -5, 3.14 
문자 : '가', 'a', '0', ' ' (공백도 문자.)
문자열 : "가나다", "asd", "123", 숫자여도 문자임." " 공백. ""아무것도 없는 것도 문자열.
그 외 : 논리형 타입인 true, false, null(값이 없다.)

 

▶기본값

전역 변수에 아무것도 저장하지 않았을 때 저장되어 있는 값. 

타입의 기본이 되는 값.

 

전역변수 : 메서드 밖에 선언되어 있는 변수. 따로 초기화를 하지 않아도

기본값으로 자동으로 초기화된다. 

 

-기본값

_boolean = false;
_char = '\u0000';               //= ' '
_byte = 0;
_short = 0;
_int = 0;
_long = 0L;
_float = 0f;
_double = 0;
_String = null;

 

string 뿐 아니라 모든 참조형 타입의 기본값은 null 이다.

 

▶ 형 변환

_byte = (byte)_int;

 

이런 식. 기본적으로는 그 타입에 맞는 변수만 저장이 가능하지만,

다른 타입의 값을 저장하고 싶다면 넣으려는 값의 타입을 바꿔주면 된다.

*하지만 큰 데이터 타입에서 작은 타입으로 형 변환을 할 경우,

오버플로우, 언더플로우 로 값이 깨질 수 있다.

*실수에 쓰이는 타입을 정수에 쓰이는 타입으로 바꾸면, 소수점이 사라진다.

*표현 범위가 작은 타입에서 큰 타입으로 형 변환할 경우에는 데이터 손실 염려가 없고,

그러므로 형 변환을 생략할 수 있다.

*작은 타입 -> 큰 타입

_int = _byte;
_long = _int;
_double = _int;
_double = _float;

 

▶ 상수

수학에서는 값이 한 번 정해져 변하지 않는 것을 상수라 하는데,

프로그래밍에서는 이것을 리터럴이라고 부름.

프로그래밍에서의 상수는 변수인데, 값이 변하지 않는 변수이다.

값을 한 번 저장하면 변경할 수 없는 저장공간이다.

 

-사용방법 :

 

final int MAX_NUMBER;

 

final 을 붙여서 사용한다. 명명규칙으로, 상수의 이름을 정할 때에는

모두 대문자로 적어주어야 한다. 이름만 보고도 변수인지, 상수인지 알 수 있도록!

 

-사용 이유 :

리터럴에 의미를 부여하기 위함. 값에 특별한 의미가 있을 때에 사용.

ex) 3.14 는 파이잖아.

 

 

 

 

 

 

 

*System.out.println( ) 

에서 ln 을 빼면 줄 바꿈을 하지 않는다.

 

'Java' 카테고리의 다른 글

java - 배열 Array  (0) 2023.03.13
java - 반복문 Repetitive Statement  (0) 2023.03.13
java - 조건문 Conditional Statement, import  (0) 2023.03.13
java - 논리연산자, 그 외 연산자  (0) 2023.03.13
java - 산술연산자, 비교연산자  (0) 2023.03.13