본문 바로가기

Java/information

[자바/JAVA] 자바의 기본 자료형

컴파일 = 번역
번역을 2번한다.
자바를 컴파일하는 프로그램은 javac

ctrl + f11 = 런타임 실행
f2 = rename
ctrl + / = 한줄 주석 생성

클래스명이 파일명이 되어야 한다.
패키지 명은 반드시 소문자로 작성해야하며, 클래스 파일명은 반드시 대문자로 작성해야한다.

클래스 블럭은 필드 또는 메소드를 포함하는 블럭이다. (속성이라고도 하고 필드라고도 하고 프로퍼티라고도 하는 
클래스를 만드는 객체의 속성을 선언하는 부분을 클래스의 필드라고 한다.) 
어떤 일을 처리하는 실행문들 모아 놓은 블록을 말한다.

클래스 선언 : 자바 소스 파일은 클래스 선언부와 클래스 블록으로 구성된다. 이렇게 작성하는 것을 클래스 선언이라고 한다.
main() 메소드 : java 명령어로 바이트 코드 파일을 실행하면 제일 먼저 main() 메소드를 찾아 블록 내부를 실행한다. 그래서
main() 메소드를 프로그램 실행 진입점 entry point이라고 부른다.
실행문 : 변수 선언, 값 저장, 메소드 호출에 해당하는 코드를 말한다. 실행문 끝에는 세미콜론(;)을 붙여야 한다.

자바 프로그램 개발 과정
1) 소스 파일(~.java)을 작성한다.
2) javac 명령어로 컴파일한다.
3) java 명령어로 실행한다.
4) 실행결과를 확인한다.

자바 소스에 대한 설명
컴파일 하면 '클래스 이름.class'라는 바이트 코드 파일이 생성된다.
main() 메소드는 반드시 클래스 블록 내부에서 작성해야 한다.
컴파일 후 실행을 하려면 반드시 main() 메소드가 있어야 한다.

기본 자료형
자바에는 모두 8가지의 기본 자료형 priminitive data types 이 있다.

 




1) 참 또는 거짓을 저장하는 자료형 - Boolean (1byte)
2) 문자를 저장하는 자료형 - char (2byte)
3) 정수를 저장하는 자료형 - byte, short, int, long (1byte, 2byte, 4byte, 8byte)
4) 실수를 저장하는 자료형 - float, double (4byte, 8byte)

논리 자료형은 true(참) 또는 false(거짓) 둘 중에서 하나의 값만을 가짐

문자 자료형 char
-문자를 한 개만 저장
-이때 반드시 홑따옴표를 써야 함 홑따옴표 안에는 정확히 한 개의 문자만을 넣어야 함. 실수로 스페이스가 하나라도 들어가면 에러가 발생
-아스키 코드(ascii code)는 영문자와 특수 문자에 숫자가 할당 된것이다.
-유니코드(unicode)는 영문자 외 여러 나라 언어들에도 숫자가 할당된것이다.
-문자는 실제로 저장될 때 숫자로 저장되기 때문에 + 또는 - 연산을 할 수도 있다.

정수 자료형은 정수를 저장하는 자료형으로서 사용되는 바이트에 따라 4가지 형태로 나뉜다.
int 범위를 벗어나는 수를 long으로 저장해야하는데 그때는 반드시 마지막에 L 또는 l을 붙여야 함.

 

 

 



실수 자료형은 실수를 저장하는 자료형으로서 저장할 수 있는 수의 범위는 정수에 비하여 훨씬 넓다.
long과 마찬가지로 float로 저장할 때는 반드시 마지막에 F 또는 f를 붙여야한다.

 


변수란 각각 다른 데이터를 담는 그릇이다. 시스템이 동작하는 동안 데이터가 담기는 공간으로 값을 저장하여 메모리에 기억한다.
휘발성 메모리

변수 선언(variable declaration) 
- 자바에서 데이터를 저장하려고 할 때 그 데이터를 저장하려는 변수를 먼저 만듬.
- 변수를 선언하면 공간이 생기지만 값을 넣기 전까지는 쓰레기 값(garbage)이 있게 됨. 변수를 선언한 후에 처음으로 값을 넣는것을
'변수를 초기화(initialization)한다' 라고 한다.
- 이때는 오른쪽 값을 왼쪽 변수에 넣어라는 의미의 = 연산자를 이용한다.
- =는 '할당 연산자' 또는 '대입 연산자'라고 한다.
- 하나의 변수에는 하나의 데이터만 들어갈 수 있음.

 

배열은 같은 자료형을 여러개를 담고있는 변수이다.

아스키코드 65 - A, 97 - a부터 알파벳 순서대로 1씩 증가한다.

2진수, 10진수 (시험 출제 가능성이 높음)

실수 자료형은 저장할 수 있는 수의 점위는 정수에 비하여 훨씬 넓다.
(소수점까지 저장하기 때문이다.) = float는 4byte지만 long의 8byte보다 저장되는 범위가 넓음

변수 이름으로 사용할 수 있는 것
modleName(o), 6hour(x), class(x), $value(o), _age(o), int(x)

지역 변수는 정해진 지역안에서만 사용할 수있다. 정해진 블록이 넘어가면 에러가 생김.

ctrl + alt + 화살표 아래


2byte는 2의 8승정도

studentNum 2개의 단어를 이어서 변수명을 지을땐 새롭게 시작하는 단어를 대문자로 쓰는 camel case와
student_num이라고 표기하는 snake case가 있다.


int data = 100; //변수 선언과 초기화를 한꺼번에 할 수도 있다.

참조 자료형 (reference data types)
-데이터가 저장된 메모리 주소를 저장하는 자료형 (실제 데이터는 따로 저장, 참조 자료형공간에는 데이터의 위치 정보(메모리 주소) 저장.
-배열, 클래스가 만든 객체가 참조 자료형.

 

운영체제
운영체제란 컴퓨터 시스템이 제공하는 하드웨어(H/W)와 소프트웨어(S/W) 기능을 사용할 수 있도록 해주는 시스템 소프트웨어(S/W)로,
한정된 시스템 자원을 효율적으로 사용할 수 있도록 관리 및 운영함으로써 사용자에게 편리성을 제공한다.
운영체제가 컴퓨터 시스템과 사용자 간의 인터페이스(interface)를 제공한다.

운영체제의 주요 기능
(1)처리능력 향상
-한정된 시간 내 최대한의 데이터를 처리
(2)응답시간 단축
-처리 요청으로부터 처리 완료까지 소요시간 최소화
(3)신뢰도 향상
-시스템 장애의 처리
(4)컴퓨터 시스템과 사용자 간 인터페이스(interface) 기능 제공
(5)출력 역할 지원
(6)각 프로그램과 사용자 간 보호 ex)알약
(7)주기억 장치 관리
(8)CPU를 통한 프로그램 실행 관리
(10)컴퓨터 시스템 명령어 해석/수행

운영체제의 종류
윈도즈 OS
UNIX
Linux
iOS
Android

운영체제를 제어하기 위한 수단은 CLI와 GUI가 있다.
1)CLI(Command Line Interface)의 특징
사용자가 직접 명령어를 입력하여 컴퓨터 시스템에게 명령을 내리는 방식 ex) 검색창에서 cmd를 입력하거나 보조 프로그램인 '명령 프롬프트'를 선택하여 command 창을 호출한다.
2)GUI(Graphic User Interface)
사용자가 마우스 등을 통해 윈도에서 프로그램을 실행하고 파일을 이동하는 방식 ex)아이콘을 더블클릭하면 실행되는 방식

윈도 운영체제의 특징
1)다중작업 기능 제공
2)CPU에 작업을 적절히 배분
3)CPU의 멀티코어에 최적화되어 있어서 사용자는 관여하지 않아도 됨

운영체제별 개발환경 구축 비교
주요 OS - Windows7, Windows10 등
프로그래밍 언어 - ASP, PHP, JSP 등
웹 서버 - Apache 등
데이터베이스 - MS-SQL, MySQL, Oracle 등

개발도구별 운영체제 현황 사례
SUN JDK : 설치 S/W는 Eclipse에 포함 되며 자바 컴파일러, 표준 라이브러리, JRE(Java Runtime Environment)등을 포함하는 SDK(Software Development Kit)

통합개발환경을 뜻하는 'IDE'는 'Integrated Development Environment'의 약자로 개발을 하면서 사용하는 도구들의 집합을 말한다.

개발 도구 서비스 사례
JDK - Java 기반 개발 및 Java Runtime 환경 제공
Ecilpse - 통합개발환경 지원 툴(IDK)
Web 서버 - 웹 환경 서비스를 지원하기 위하여 http 요청을 서비스한다.
Was - 웹 서버로부터 요청을 받아 처리하기 위한 처리엔진을 가지며 분산 및 클리스터링 기반의 서비스 제공
DBMS - 업무에 의해 발생하는 정보의 저장을 담당한다.

'Java > information' 카테고리의 다른 글

[자바/JAVA] 반복문  (0) 2023.04.06
[자바/JAVA] 조건문  (0) 2023.04.04
[자바/JAVA] 형변환과 시스템 입출력  (0) 2023.03.31
[자바/JAVA] 상수와 여러 연산자들  (0) 2023.03.29
[자바/JAVA] 자바란  (0) 2023.03.23