본문 바로가기
소프트웨어개발

[JAVA] DATA Type

by 보이드메인 2016. 7. 12.

l  자료형

 

Boolean : 논리형 데이터 타입, true false로 이루어져 있다.

Boolean a = ture;

-       논리값

True : Boolean형에 대입할 때 쓰이는 키워드이거나 참을 뜻하는 결과값

False : Boolean형에 대입할 때 쓰이는 키워드이거나 다름을 뜻하는 결과값

 

Char : 문자형 데이터 타입 ‘ ‘로 에워싸서 표현한다.

char a = ‘a’;

 

Byte : 정수형 데이터 타입, 28까지 표현 할 수 있다. -128 ~ 127

 

Short : 정수형 데이터 타입, 216까지 표현 할 수 있다. -32768 ~ 32767

 

Int : 정수형 데이터 타입 , 232까지 표현 할 수 있다. -2147483648 ~ 2147483647

 

Long : 정수형 데이터 타입 , 264까지 표현 할 수 있다. – 9223372036854775808 ~ 9223372036854775809

 

Float : 실수형 데이터 타입. 32비트 float형 변수에 실수를 대입할때는 f를 붙여서 대입해야한다.

그 이유는 실수형 값을 double로 인식하기 때문에 변수에 저장할 때 float으로 형변환을 해야하기 때문인데

실수 뒤에 f를 기입해서 형변환을 한후 대입 하는것이다.

float a = 3.14f; 또는 float a = (float)3.14;

 

Double : 실수형 데이터 타입 64비트

 

Const : 상수형 - Java에서는 Final로 대처되어 쓰인다.

 

Void : 리턴값이 없음, 메소드가 값을 리턴하지 않음을 지정

void Joker(int a, int b){처리문}

 

Enum : 열거형 타입, 한정된 값을 갖는 데이터를 상수로 처리하고자 할 때 문자로 표현하여

의미전달을 확실히 하고자 할 때 사용한다

enum 열거타입명 {상수값 나열 ; }

 

 

l  제어문

If : 조건에 따른 처리를 위한 제어문

 

Else : 조건 제어문인 if문에 쓰이는 키워드 if조건에 맞지 않을 경우 수행한다.

If(a=1){

System.out.println(“나는야 천재”);}

Else {

System.out.println(“나는야 바보”);}

 

For : 반복 처리를 위한 제어문

for(a = 0 ; a< 5; a++)

 

While : 반복 처리를 위한 제어문(반복 처리할 횟수가 미리 정해져 있지 않을 때 쓰임)

While(조건){처리}

 

Do : Do while문에 쓰이는 제어문 키워드

Do~ while while과 다른부분은 조건을 아래쪽에 쓰기 때문에 한번은 반드시 수행한다.

do{

           i++;

           s= s+i;

}while(i<10);

System.out.println("처리문");

 

Continue : 자신이 위치한 루프의 처리를 중단하고 다음차례의 반복을 처음부터 실행시키는 동작을 한다.

While(조건){

처리1

Continue;

처리2}

위와 같이 지정하면 처리2는 처리하지 않고 처리1만 처리하고 다시 반복한다.

 

Switch : 여러 개의 case라는 선택지에서 식의 값과 일치하는 것을 골라 해당되는 처리를 하는 분기처리문

 

Case : Switch에서 쓰이는 선택지

 

Default : Swtich 문에서 사용하며 Case 선택지에 맞지 않을 경우 Default 로 이동한다.

switch(1+1)

{

case 1:

                     System.out.println("1이거죠!!");

                     break;

                               

case 2:

System.out.println("2이거죠!!");

break;

}

Default:

System.out.println("다 틀렸어!!");

}

 

Break : for, while, Switch 문과 같은 제어문을 중단하기 위해서 사용하는 키워드

for(a = 0 ; a< 5; a++){

           if(a == 3){

           break;

 

Goto : 특정 라벨을 지정하면 그 장소로 점프하는 제어문인데 프로그램의 흐름에 관계없이

어디라도 이동해서 프로그램을 혼란스럽게 만들기 때문에 자바 언어에서는 사용하지 않는다.

자바에서는 Countinue break문을 사용함.

 

 

l  클래스, 객체 관련

 

Class : 데이터와 처리동작을 하나로 모아놓은 것.

데이터를 필드, 처리동작을 메소드라고 하며 필드와 메소드를 클래스의 맴버라고 함

Class DongHan{}

 

New : 오브젝트 생성 연산자

Book book1 = new Book();

 

Static : 필드와 메소드에 붙이는 제한자

메모리의 정적인 부분에 필드와 메소드를 올려서 값을 공유함

Class A{Static int a;}

 

Final : 필드나 클래스에 붙이는 제한자 Final을 붙이면 필드는 값을 변경할 수 없고 클래스는 상속할수 없다.

final int a = 3;

Final class animal{}

 

This : 기술된 오브젝트 그 자체는 나타냄. 좀더 명확하게 나타내기 위해서 쓰이지만 this는 생략해도 상관없기 때문에 보통 쓰이지 않음.

아래 예와 같이 인수로 받은 변수와 필드의 명이 같을 때 쓰임

Person( String name, int age){

This. name = name;

This.age = age;}

 

Abstract : 추상 메소드나 추상 클래스를 정의할때 쓰는 수식자

추상메소드는 처리 내용을 기술하지 않은 메소드이고 추상 메소드를 가진 클래스를 추상 클래스라고 한다.

abstract class Animal{ < 추상화 클래스 선언

Abstract void cry(); < 추상 클래스 선언

void setData(int m){….}}

 

Interface : 상속 관계가 아닌 클래스에 기능을 제공하는 구조

추상 메소드와 다른점은 인터페이스 안의 메소드는 추상 메소드만이 맴버가 될수 있다.

Interface A{

Int a = 2;

Say();}

인터페이스 안의 맴버들은 추상메소드 밖에 될수 밖에 없기 때문에 say();와 같이 수식자를 생략할수 있다.

수식까지 표기하면 Public abstract void say(); 이 된다.

 

Implements : 인터페이스를 구현할 때 쓰인다.

Class B implements A{}

 

Extends : 상속시 쓰이는 키워드

Class Cat extends Animal

Cat 서브클래스에서 Animal 슈퍼 클래스를 상속받아 사용한다.

 

Return : 메소드를 종료할 때 반환값을 돌려줄 때 사용한다.

반환값이 없는 경우 return문은 생략할 수 있다.

Class A{

Int add(int a, int b){

Int x;

X = a +b;

Return x;

}}

 

Instanceof : 오브젝트가 지정한 클래스의 오브젝트인지 조사하기 위한 연산자

Boolean flag = c instanceof X;

c오브젝트가 X클래스로 생성한 오브젝트일 경우에 위에 식에서 true가 된다.

 

Package : 클래스를 한데 모아놓은 것
윈도우의 폴더 개념으로 보면 되고 우리가 생성하는 클래스파일(자바파일)하나하나가 파일로 생각하면 된다.

 

Strictfp : 인터페이스 제한자. 엄격한 부동 소수정(strict floating point)

strictfp 로 선언된 인터페이스는 엄격히 평가되는 부동 소수점 연산을 가진다.

 

Super : 부모가 되는 클래스

서브 클래스 안에서 super라는 말을 사용하면 슈퍼 클래스의 필드와 메소드를 참조할 수 있다.

Super.bye()

 

Import : 자바 API또는 임의로 만들어진 외부클래스 사용시 쓰임

파일 최상단에 Import.java.io.File라고 선언하면 java.io.file가 가지고 있는 메소드들을 사용할수 있다.

 

 

l  접근제한자

 

Private : 오브젝트 내에서만 이용할수 있게 선언하는 제한자

Private void Hello()

 

Protected : 동일한 패키지 내에서만 이용이 가능하고 상속은 패키지에 상관없이 가능하게 선언하는 제한자.

protected void Hello()

 

Public : 어떤 때라도 상속과 이용이 가능하게 선언하는 제한자

public void Hello()

 

 

l  예외 및 검증 키워드

 

Try, Catch, Finally : 예외처리 사용시 쓰이는 키워드

try문에서 예외가 발생하면 catch문으로 넘어가고 그렇지 않을 경우 finally부분을 수행한다.

Try{예외가 일어날 것 같은 처리}

Catch(예외클래스){예외 발생시 수행할 처리}

Finally {처리}

 

Assert : 상태를 검증하는 키워드

해당 조건을 만족하지 않으면 AssertionError를 발생시킨다.

Public class Assert{

Public static void main(String[] args){

Assert.args.length < 0;}}

 

Throw :  메소드내에 상위 블록으로 예외를 던질 때 쓰는 키워드

 

Throws : 현재 메소드에서 상위 메소드로 예외를 던지는 때 쓰는 키워드

throws는 예외를 자신이 처리하지 않고 자신을 호출하는 메소드에게 책임을 전가하는 것이다.

 

 

l  기타

 

Synchronized : 메소드 동기화 또는 동기화 블럭 생성, 클래스나 코드의 한 섹션을 잠궈 쓰레드에 의한 동시적인 수정을 예방

 

Transient : 입출력에서 제외시키고 싶은 인스턴스가 존재할 때 쓰는 키워드

Public transient Point someObject;

 

Volatile : 하나의 변수를 여러 쓰레드에서 사용할 때 사용하는 키워드

변수가 비동기적으로 변하므로 컴파일러가 변수 사용시 최적화를 시도해선 안됨을 지정한다

 

Native : 자바이외의 프로그래밍 언어로 작성된 부프로그램을 호출 할 때나 하드웨어를 직접 조작할 필요가 있을 때 쓰이는 메소드명

네이티브 메소드는 native 제한자로 선언된다.

Public native int getCPUID();

 

Null : 임의 객체를 참조하지 않는 변수(C에서 0인것처럼 간주하지않음을 뜻함)를 지정

 

'소프트웨어개발' 카테고리의 다른 글

select,epoll,poll  (0) 2020.03.18
C++,참조연산  (0) 2020.03.18
[ GPS ] GPS Packet Sheet  (1) 2016.01.05
[음성합성 기술 ] 음성합성 기술 및 국내외 현황 2013  (0) 2016.01.05
[ IP-PBX ] 오픈소스 구축(2014.0806)  (0) 2016.01.05

댓글