이 영역을 누르면 첫 페이지로 이동
codesche's blog 블로그의 첫 페이지로 이동

codesche's blog

페이지 맨 위로 올라가기

codesche's blog

[Java 기초]자바 코드의 기본 구조

  • 2022.12.30 01:34
  • Back-End/Java

○ 클래스 구성

 

○ 클래스(class)

 

객체의 공통된 특징을 기술한 것, 객체를 저으이하는 틀 또는 설계도

클래스는 객체의 상태를 나타내는 필드(field)와 객체의 동작을 나타내는 메소드(method)로 구성되는데

자바에서는 클래스를 가지고 여러 객체를 생성하여 프로그래밍을 한다.

 

필드(field) : 클래스에 포함된 변수(variable)

메소드(method) : 특정한 작업을 수행하기 위한 명령문의 집합

 

 

○ 인스턴스(instance)

 

자바에서 클래스를 사용하려면 해당 클래스 타입의 객체를 선언해야 하는데 

이렇게 클래스로부터 객체를 선언하는 과정을 클래스의 인스턴스화라고 부른다.

 

여기서 선언된 해당 클래스 타입의 객체를 인스턴스(instance)라고 한다.

즉 인스턴스란 메모리에 할당된 객체를 뜻한다.

 

자바에서는 하나의 클래스로부터 여러 개의 인스턴스를 생성할 수 있다.

이렇게 생성된 인스턴스는 독립된 메모리 공간에 저장된 자신만의 필드를 가질 수 있지만

해당 클래스의 모든 메소드(method)는 해당 클래스에서 생성된 모든 인스턴스가 공유하게 된다.

 

 

○ 생성자

 

생성자는 class의 초기화를 위해 존재하며 값이 지정되지 않은 필드의 값을 넣어주는 역할을 한다.

초기화되지 않은 객체를 초기화해주는 역할을 하기도 한다.

 

 

○ 메소드

 

자바의 어떤 일을 수행하기 위해 독립적으로 생성해두는 것이며 기타 언어에서 언급되는 '함수'와 동일한 역할을 한다. 함수와 메소드를 혼용해서 말하기도 하는데 실질적으로 동일한 역할을 한다고 생각하면 된다. 클래스 안에서만 존재할 수 있다.

 

 

○ 접근 지정자

 

접근 지정자는 클래스, 필드, 메소드 등을 보호하기 위해 사용된다.

클래스나 멤버 각각에 외부에서 접근할 수 있는 범위를 지정할 수 있다.

 

 

 

*접근 지정자 종류

클래스 접근 지정자 : public, default (default는 생략 가능)

필드, 메소드 접근 지정자 : public, protected, default, private

 

'Back-End > Java' 카테고리의 다른 글

02-상수와 리터럴  (0) 2023.04.20
01-변수(3)  (0) 2023.04.20
01-변수(2)  (0) 2023.01.31
01-변수(1)  (0) 2023.01.30
00. 자바 포스팅을 시작합니다  (0) 2023.01.26

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • 01-변수(3)

    01-변수(3)

    2023.04.20
  • 01-변수(2)

    01-변수(2)

    2023.01.31
  • 01-변수(1)

    01-변수(1)

    2023.01.30
  • 00. 자바 포스팅을 시작합니다

    00. 자바 포스팅을 시작합니다

    2023.01.26
다른 글 더 둘러보기

정보

codesche's blog 블로그의 첫 페이지로 이동

codesche's blog

  • codesche's blog의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (76)
    • Algorithm (15)
      • 백준 (3)
      • 프로그래머스 (10)
      • inflearn 알고리즘(Java) (2)
    • 블로그소개 (1)
    • Back-End (11)
      • Java (10)
      • SpringBoot (1)
    • Database (2)
      • MySQL (0)
      • MariaDB (1)
      • Redis (0)
      • 개념, 이론 (1)
    • Front-End (0)
      • html, css, javascript (0)
    • Git (2)
    • 알고리즘 지식 (11)
      • 자료구조 (11)
    • Study Cafe (21)
      • 기술면접 (6)
      • Clean Code 스터디 (14)
      • CS 스터디 (0)
      • 개발용어 (1)
    • 주간 에세이 (10)
    • DevOps (3)
      • 배포, Front&Back 연동 (1)
      • AWS (0)
      • Docker (1)
      • 이론 (1)

최근 글

인기 글

댓글

공지사항

아카이브

태그

  • git commit
  • 자바 기초
  • 주간에세이
  • 개발자 현실
  • java
  • 자바 변수
  • 클린코드
  • 자료구조

나의 외부 링크

정보

The Code의 codesche's blog

codesche's blog

The Code

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © The Code. Designed by Fraccino.

티스토리툴바