📘 Backend/Java
Java 기초 (Method, Variable)
신건우
2023. 3. 31. 13:13
📘 Java 기초
Java의 특징
- 운영체제에 독립적
- OOP
- 함수형 프로그래밍 지원 (lambda , Stream)
- 자동 메모리 관리 (garbege Collector에 의한 메모리 관리)
JRE (Java Runtime Environment) : JVM + 표준 클래스 lib**JDK (Java Development Kit) : JRE + 개발에 필요한 도구
Java에서 main method는 진입점 함수임.
위 코드에서 public class main {} 은 다음을 의미함
- 접근 허용범위가 public인 main이라는 class를 정의함 (main이라는 class 안에 코드작성가능)
위 코드에서 public statis void main(String[] args] {} 는 다음을 의미함
- void main은 나중에 배울 class와 관련됨 개념이니 소거하고, 간편식 A main(B C) { D }
- A main(B C) { D } 는 method를 정의하는 문법.
📘 Method
- 어떤 기능을 하는 코드를 묶음으로 묶은것, 어떠한 기능을 수행하기 위한 일련의 코드들의 집합체
- 함수의 개념에 가까움
메서드
클래스 내에 포함되어 있는 함수
자바는 객체지향 언어이며, 모든 코드를 클래스 내에 작성하기 때문에,
보통 함수보다는 메서드라는 용어 사용.
void main (String[] args) { code }
A(반환타입) main(메서드이름) (B매개변수타입 C매개변수이름) {메서드_바디}
[A] 반환타입 void
- A는 반환타입을 의미 , 처리결과를 일종의 '값'의 형태로 반환되며, 이를 반환값 이라고함
- 값에는 정수형,문자형,논리형 등이 있음 (데이터 타입이라고도함)
- 즉 A는 데이터의 값을 반환할 타입을 의미하며, 메서드를 정의할때 메서드 이름앞에 반환타입을 명시해주어야함
[B,C] 매개변수타입 , 매개변수이름
- 데이터를 입력받음. 메서드 외부에서 메서드 내부로 전달되어진 값.
- 외부로부터 전달받은 값으 저장하고있는 변수 = 매개변수
- 어떤 유형값의 값을 메서드가 입력받을것 인지를 명시함.
- 메서드를 정의할때는 매개변수타입과 매개변수의 이름을 공백으로 구분하여 명시해야함.
[D] 메서드 바디
- 구체적으로 어떤 기능을 수행할지에 대한 코드를 작성하는 부분
- return 키워드를 사용해 어떠한 값을 반환할 수 있음.
메서드 호출
메서드를 정의하는것만으로 실행이 되지않음, 메서드를 실행시키려면 메서드를 아래처럼 호출을 해주어야 함.
메서드 이름에 호출연산자 ()를 붙여 호출할 수 있다.
() 안에는 위에 언급한 매개변수에 넣어줄 값을 입력하면 됨.
수도 코드(pseudo code) 란?
프로그래밍 언어로 코드 작성 전, 어떤 과정을 통해 만들지 사람의 언어로 먼저 작성하는것
📘 변수
값을 저장할 수 있는 메모리 공간에 사람이 식별할 수 있는 이름을 붙인것 (메모리 주소 사용 x)
개념
- 기억하고자 하는 값이 얼만큼의 메모리 공간을 필요로 하는지 파악
- 기억하고자 하는 값이 차지하는 용량만큼의 메모리공간 확보
- 확보한 메모리 공간에 기억하고자 하는 값 저장
- 값을 저장한 공간에 이름을 붙임
위 과정에서 1,4번이 중요함
1번
- 어떤 값을 기억하기전 그 값을 저장하기위해 필요한 메모리 공간의 크기를 알아야함.
- 타입별로 차지하는 메모리 공간의 크기가 각각 다름.
4번
- 어떤 값을 메모리에 저장 후, 해당 값에 접근 하려면 이름이 무조건 있어야함.
- 이것을 변수라고함
아파트를 예로 들어보자
변수 선언 / 값 할당
int num; // 변수 선언
num = 1; // 값 할당(초기화)
num = 2; // 값 할당(재할당)
int num = 1; // 선언과 동시에 초기화