Hello world를 이용한 코드 분석(기본 코드의 분석)
public class Java{
public static void main(String [] args){
System.out.println("Hello world")
};
}
접근제한자 클래스선언 클래스이름{
접근 제한자 static 반환형 메서드이름(메인함수)(파라미터){
구현할 코드
}
}
public class Java{
public static void main(문자열 배열 변수명){
구현할 코드
};
}
가장 기본적인 Java의 Hello world 출력을 위한 코드로 코드를 분석해보면 다음 위와 같다.
// 1) 접근 제한자 -> public, private, protected, default
-> 클래스나 메서드에 접근할 수 있는 범위를 지정 --> 접근 제한자, 접근제어자,
-> private > protected > public
// 2) 클래스 선언 -> class
-> 객체를 생성하는 틀, 프레임, 공장, 템플릿
// 3) 클래스 이름 -> 카멜케이스(단어와 단어 사이의 구분 -> 대문자)
// 4) 메서드 이름 -> 메서드란? = 함수 => 어떤 특정한 동작이나 작업, 행위 등을 수행하는 것.
// 5) 메인 메서드 -> main()--> 만약 다르게 작성하면 기본 메서드를 찾을 수 없다라고 에러 발생
(그래서 기본 메서드인 (main)을 작성)
-> 자바 프로그램이 실행되면 제일 먼저 메인 메서드를 찾아서 실행.
-> 길게 작성된 소스에서 그 프로그램의 시작이 어딘지 알 수 없으면 안되는데,
이때 시작점을 알려주는 용도 -> entry point --> main()
// 6) 파라미터스 -> 메서드(함수) 호출 시 하나 or 둘 이상의 파라미터 값을 넣어서 호출이 가능.
-> 그러한 인수(파라미터)들의 값을 저장할 변수(바구니)들을 명시
-> String = 문자열 --> []배열 = args == argument
(매개변수 args는 내가 원하는 이름으로 바꿀 수 있음.)
// 7) 반환할 타입 -> return type --> 반환할 값이 없으면 void
-> 이 메서드(함수)는 호출하면 결과로 특별히 반환되는 값은 없이 수행되는 메서드
// 8) - static으로 선언된 함수(메서드)나 변수는 자바 가상 머신에서 인스턴스 객체의 생성 없이 호출을 할 수 있다.
(객체 생성없이 해당 함수(메서드)를 호출해 사용할 수 있다.)
- 자바 프로그램을 실행하면 static으로 지정된 메서드를 찾아서 먼저 메모리에 할당한다.
- static으로 지정된 메서드가 여러개인 경우엔 객체를 생성하는 것과 상관없이 모두 메모리에 할당.
- 그런 후, "main"으로 이름이 들어간 메서드를 찾아서, 그 메서드를 시작점으로 호출함.
변수의 선언
public class Java{
public static void main(String [] args){
int a;
int b;
a=3;
b=4;
sum = a+b;
System.out.println(a+b);
System.out.println(sum);
}
}
// 9) 변수 => 바구니 = 데이터를 저장하는 메모리 공간
// 10) 변수의 선언 -> 변수를 사용하기 위해서는 먼저 변수의 타입에 맞는 선언을 해줘야 함.
(각 데이터의 형에 맞게 타입을 맞춰 선언해야 함.)
// 11) 변수의 용도 -> 저장 -> 어떤 연산을 수행할 때, 값 들을 저장해야 하는데, 그 때 변수를 활용
자료형과 연산자
연산자는 쉽게말해 "연산을 수행하는 기호"를 말한다 (사칙연산 기호 생각하면 쉽다.)피연산자는 연산자의 작업 대상으로 변수, 상수, 리터럴, 수식 등이 해당된다.
자료형은 크게 봤을땐 기본형 타입과, 참조형 타입으로 구분할 수 있는데,
기본형 타입(Primitive Data Type)은 8개가 있으며 사용하기 전 반드시 선언(Declared)되어야 하며 OS에 따라 자료형의 길이가 변하지 않는다. 비객체 타입이라 Null 값을 가질 수 없다.
기본형 타입은 다음 아래와 같다. (참고 1byte = 8bits)정수형은 byte(1byte), short(2), int(4), long(8)실수형은 float(4), double(8)문자형은 char(2byte) = 문자 한개를 말한다.(문자열을 다루는 타입은 존재 x 기본형이 아닌 참조형임.)부울형은 논리형으로 참과 거짓 2개의 값을 갖는다. boolean(1byte) = true, false
참조형 타입은 기본형에 속하지 않는 데이터들로, 참조형 타입은 다음 아래와 같다.
대표적으로 클래스(class), 배열(array), 인터페이스(inteface), 문자열(String/immutable)이 있으며참조형 변수의 특징은 데이터가 저장된 메모리의 주소 값을 저장하는 변수이다.
'Language > Java' 카테고리의 다른 글
클래스 메서드(static)와 인스턴스 메서드 (static은 무엇일까) (0) | 2022.01.20 |
---|---|
장독에 지식 채우기 (모를때마다 와서 추가)-(2022.01.17ver) (0) | 2022.01.17 |
Java의 이해(객체와 메모리) (0) | 2022.01.17 |
1) 객체 지향 프로그래밍 및 클래스 제작과 객체 생성 그리고 변수와 메서드) (0) | 2022.01.17 |
Java에 대한 기본적인 이해(배열과 메모리 그리고 조건문, 반복문) (0) | 2022.01.17 |