Java 기초 (Method, Variable)

2023. 3. 31. 13:13·📘 Backend/Java
목차
  1. 📘 Java 기초
  2. Java의 특징
  3. 📘 Method
  4. 메서드
  5. 수도 코드(pseudo code) 란?
  6. 📘 변수
  7. 개념
  8. 아파트를 예로 들어보자
  9. 변수 선언 / 값 할당

📘 Java 기초

Java의 특징

  • 운영체제에 독립적
  • OOP
  • 함수형 프로그래밍 지원 (lambda , Stream)
  • 자동 메모리 관리 (garbege Collector에 의한 메모리 관리)

JRE (Java Runtime Environment) : JVM + 표준 클래스 lib**JDK (Java Development Kit) : JRE + 개발에 필요한 도구


Java에서 main method는 진입점 함수임.

img

  • 위 코드에서 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 키워드를 사용해 어떠한 값을 반환할 수 있음.

메서드 호출

메서드를 정의하는것만으로 실행이 되지않음, 메서드를 실행시키려면 메서드를 아래처럼 호출을 해주어야 함.

메서드 이름에 호출연산자 ()를 붙여 호출할 수 있다.

img

() 안에는 위에 언급한 매개변수에 넣어줄 값을 입력하면 됨.


수도 코드(pseudo code) 란?

프로그래밍 언어로 코드 작성 전, 어떤 과정을 통해 만들지 사람의 언어로 먼저 작성하는것


📘 변수

값을 저장할 수 있는 메모리 공간에 사람이 식별할 수 있는 이름을 붙인것 (메모리 주소 사용 x)


개념

  • 기억하고자 하는 값이 얼만큼의 메모리 공간을 필요로 하는지 파악
  • 기억하고자 하는 값이 차지하는 용량만큼의 메모리공간 확보
  • 확보한 메모리 공간에 기억하고자 하는 값 저장
  • 값을 저장한 공간에 이름을 붙임

위 과정에서 1,4번이 중요함


1번

  • 어떤 값을 기억하기전 그 값을 저장하기위해 필요한 메모리 공간의 크기를 알아야함.
  • 타입별로 차지하는 메모리 공간의 크기가 각각 다름.

4번

  • 어떤 값을 메모리에 저장 후, 해당 값에 접근 하려면 이름이 무조건 있어야함.
  • 이것을 변수라고함

아파트를 예로 들어보자

image-20230331100218837


변수 선언 / 값 할당

int num; // 변수 선언

num = 1; // 값 할당(초기화)

num = 2; // 값 할당(재할당)

int num = 1; // 선언과 동시에 초기화

'📘 Backend > Java' 카테고리의 다른 글

Java Operator & I/O  (0) 2023.03.31
Java Final  (0) 2023.03.31
Java String Class  (0) 2023.03.31
Java Type  (0) 2023.03.31
Java 예약어  (0) 2023.03.31
  1. 📘 Java 기초
  2. Java의 특징
  3. 📘 Method
  4. 메서드
  5. 수도 코드(pseudo code) 란?
  6. 📘 변수
  7. 개념
  8. 아파트를 예로 들어보자
  9. 변수 선언 / 값 할당
'📘 Backend/Java' 카테고리의 다른 글
  • Java Final
  • Java String Class
  • Java Type
  • Java 예약어
신건우
신건우
조용한 개발자
  • 신건우
    우주먼지
    신건우
  • 전체
    오늘
    어제
    • 분류 전체보기 (422)
      • 📘 Frontend (71)
        • Markup (1)
        • Style Sheet (2)
        • Dart (8)
        • Javascript (12)
        • TypeScript (1)
        • Vue (36)
        • React (2)
        • Flutter (9)
      • 📘 Backend (143)
        • Java (34)
        • Concurrency (19)
        • Reflection (1)
        • Kotlin (29)
        • Python (1)
        • Spring (42)
        • Spring Cloud (5)
        • Message Broker (5)
        • Streaming (2)
        • 기능 개발 (5)
      • 💻 Server (6)
        • Linux (6)
      • ❌ Error Handling (11)
      • 📦 Database (62)
        • SQL (31)
        • NoSQL (2)
        • JPQL (9)
        • QueryDSL (12)
        • Basic (4)
        • Firebase (4)
      • ⚙️ Ops (57)
        • CS (6)
        • AWS (9)
        • Docker (8)
        • Kubernetes (13)
        • MSA (1)
        • CI & CD (20)
      • 📚 Data Architect (48)
        • Data Structure (10)
        • Algorithm (8)
        • Programmers (17)
        • BaekJoon (5)
        • CodeUp (4)
        • Design Pattern (4)
        • AI (0)
      • ⚒️ Management & Tool (8)
        • Git (7)
        • IntelliJ (1)
      • 📄 Document (10)
        • Project 설계 (6)
        • Server Migration (3)
      • 📄 책읽기 (2)
        • 시작하세요! 도커 & 쿠버네티스 (2)
      • 🎮 Game (4)
        • Stardew Vally (1)
        • Path of Exile (3)
  • 블로그 메뉴

    • 링크

      • Github
    • 공지사항

    • 인기 글

    • 태그

      GStreamer #Pipeline
      Lock #Thread #Concurrency
      React #Markdown
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.0
    신건우
    Java 기초 (Method, Variable)
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.