1) 변수와 상수

 변수: 어떠한 데이터를 저장하기 위한 메모리 공간의 이름. 지속적으로 변수의 값을 변경할 수 있다.

 상수: 중간에 값이 변할 수 없고, 초기값을 사용한다.

 

2) 기본 자료형(Primitive Type)

 자바의 변수는 반드시 자료형이 선언되어야 하고, OS따라서 자료형의 길이가 변하지 않습니다. 또한, 비객체 타입이므로, null 값을 가질수가 없습니다.

TYPE		Bits		Range of Values
--------------------------------------------------------------------------------------
byte		8비트		정수형(-2^7 ~ 2^7-1)
short		16비트		정수형(-2^15 ~ 2^15-1)
int		32비트 		정수형(-2^31 ~ 2^31-1)
long		64비트		정수형(-2^63 ~ 2^63-1)
float		32비트		부동형 실수(0x0.00002P-126f ~ 0x1.fffffeP+127f)
double		63비트		부동형 실수(0x0.0000000000001P-1022 ~ 0x1.fffffffffffffP+1023)
char		16비트		문자
boolean		1비트		true, false

 3) 참조 자료형(Reference Type)

 참조형은 기본적으로 java.lang.Object를 상속 받으면 상속형이 된다. 선언한 자료형이 기본형이 아닌 경우 참조형이 된다. 참조형은 클래스형(Class type), 인터페이스형(Interface Type), 배열형(Array Type)이 있다.

 

 - 클래스형(Class Type)

Class MyClass{
	private int index;
    MyClass(int index) {
    	this.index = index;
    }
    
    public int getIndex() {
    	return index;
    }
    
    public void setIndex(int index){
    	this.index = index;
    }
}

public class ClassType{
	public MyClass a = new MyClass(2);
    public MyClass b = new MyClass(4);
    System.out.println(a.getIndex());  // "a" result is 2.
    a=b;
    System.out.println(a.getIndex());  // "a" result is 4.
    b.setIndex(6);
    System.out.println(a.getIndex());  // "a" result is 6.
}

 b 객체의 멤버 변수 값을 바꿨지만, a 객체는 b 객체를 참조하기 떄문에 동일한 값을 출력한다. 위 코드에서는 a와 b라는 변수를 가지는 것이 아닌, 객체의 주소를 참조하기 때문에 b의 값을 가지게 된다.

 

 - String Class

 클래스형에서도 String 클래스는 조금 특별하다. 이 클래스는 참조형에 속하지만, 사용은 기본형처럼 사용한다. 그리고 불변하는 객체이다. 만약, String클래스에 속한 데이터를 바꾼다고해도, 새로운 String 클래스 객체를 만들어 내는것이다. 일반적으로 기본형의 비교는 =(equal) 연산자를 사용하지만 String 객체간의 비교는 .equals() 메소드를 사용한다.

 

 -Wrapper Class

 기본형은 비객체이기 때문에 null을 할당할 수 없지만, 기본형을 클래스로 감싼 형태인 Wrapper Class를 활용하면 null을 할당 할수있다. 다음의 클래스는 각각의 기본 자료형에 대응한다

기본형		대응 래퍼 클래스
byte 		Byte
short		Short
int		Integer
long		Long
float		Float
double		Double
char		Char
boolean		Boolean

 

 - 인터페이스형(Interface Type)

 일반적으로 인터페이스는 추상 클래스와 많이 비교된다. 인터페이스는 새로운 참조 자료형을 만드는 것과 같다. 인터페이스는 아래와 같은 형식으로 만든다

interface MyInterface<T> {
	void add(T value);
}

 <T>는 제너릭 타입이며, 옵션이다.

 

 - 배열형(Array Type)

 배열형은 기본형으로도 만들 수 있고 참조형으로도 만들 수 있다.

public class MyArray{
	public static void main(String[] args) {
    	int[] i = new int[2];
        Long[] l  new Long[2];
        Object[][] o = null;
    }
}

 자료형에 대해 []를 선언함으로 배열을 지정할 수 있다. 배열형 변수 또한 주소가 할당되는 것이기 때문에 클래스형과 특징이 일치한다.

 

 - 열거형(Enum Type)

  String 클래스와 마찬가지로 불변의 객체이며, 상수의 집합을 만들거나 특정 객체의 상태를 모아서 사용한다. 

 

'Java' 카테고리의 다른 글

05.Java(기초), 반복문  (0) 2022.11.07
04.Java(기초), 조건문  (0) 2022.11.07
03.Java(기초), 연산자(Operator)  (0) 2022.11.07
01. VS Code에서 Java 개발 환경 설정하기  (0) 2022.11.07
00. Java  (0) 2022.11.07

 가장 먼저 VS Code에서 Java 환경을 만들어 주기 위해서는 VS Code 설치가 필요하다. 아래의 링크에서 VS Code를 설치하자

 VS Code : https://code.visualstudio.com/

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

 VS Code 설치가 끝이났으면 JDK(Java Development Kit)를 설치하자.

 JDK 17 : https://www.oracle.com/kr/java/technologies/downloads/#java17

 

Download the Latest Java LTS Free

Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.

www.oracle.com

 두 개발 도구를 설치했으면 이제 Java에서는 환경 변수라는걸 설정해주어야 된다. 자바에서 중요한 환경 변수는 3가지가 있는데 다음과 같다

 - JAVA_HOME 환경변수 설정

 - JDK_HOME 환경변수 설정

 - PATH 환경변수에 Java.exe 위치 지정

 

 (환경변수를 왜 지정해야하는가에 대한 설명: https://www.lifencoding.com/software/26?p=1)

 (환경변수를 지정하는 방법: https://aitconomy.tistory.com/210)

 

이제 VS Code를 실행하고 자바 확장팩을 설치한다

이제 Ctrl + Shift + P를 누르고 Java:Create Java Project...를 선택하고 No build tools를 선택하고 프로젝트를 만들어준다. 이제부터 자바의 개발을 시작할수 있다.

'Java' 카테고리의 다른 글

05.Java(기초), 반복문  (0) 2022.11.07
04.Java(기초), 조건문  (0) 2022.11.07
03.Java(기초), 연산자(Operator)  (0) 2022.11.07
02. Java(기초), 변수, 자료형  (0) 2022.11.07
00. Java  (0) 2022.11.07

- Java? 

 제임스 고슬링이 개발한 객체 지향 언어(Object-Oriented Languege)이며, Write Once, Run Anywhere를 모토로 개발된 언어이다. 즉, JRE가 설치된 모든 환경에서 실행이 가능하다는 것이다.

 1995년에 탄생한 이후로 쌓여온 노하우로 안정성이 높아, 꾸준한 기업용 소프트웨어에서 기본 언어 및 환경으로 채택하고 있다. 또한, 오랜기간 개발된 오픈소스 라이브러리가 많다. 

 

 - 사용하는 곳

 백엔드 서버 개발, 데이터 엔지니어링, 하드웨어 실행환경에 구애받고 싶지 않은 모든 곳

 

 - Java의 한계

 정해진 Java의 문법때문에, 더 유연하고 견고한 코드를 만들기 어렵다. 단점을 극복하기 위해 대표적인 언어로 Kotlin, GoLang 등이 있다.

 

 - Java의 장점

 레퍼런스가 많아 배우기 쉬운 객체 지향언어이다. 언어가 다르더라도 실행환경은 Java의 구동환경인 JVM에서 동작하는 언어들이 많다. JVM에 대한 지식은 언어가 바뀌더라도 유효하다. 또한, 안정성이 중요한 소프트웨어, 대용량 데이터를 다루기 위한 도구들은 대부분 JVM, java 기반으로 만들어져있다.

'Java' 카테고리의 다른 글

05.Java(기초), 반복문  (0) 2022.11.07
04.Java(기초), 조건문  (0) 2022.11.07
03.Java(기초), 연산자(Operator)  (0) 2022.11.07
02. Java(기초), 변수, 자료형  (0) 2022.11.07
01. VS Code에서 Java 개발 환경 설정하기  (0) 2022.11.07

+ Recent posts