본문 바로가기
컴퓨터/Java

[JAVA] 라이브러리/클래스, 매소드, 객체/변수 알아보기 (1)

by 버니케이 2021. 9. 23.
반응형
0. 더하기 프로그램
1. 라이브러리 / 클래스
  1-1 라이브러리 클래스
  1-2 public class
2. 매서드
3. 객체 / 변수

 

 

0. 더하기 프로그램

다음은 더하기를 해주는 프로그램이다.

import java.util.Scanner;

public class Practice {
    public static void main(String args[]){

        Scanner input = new Scanner(System.in);
        int x;
        int y;
        int sum;

        System.out.print("첫 번째 숫자를 입력하시오: ");
        x = input.nextInt();

        System.out.print("두 번째 숫자를 입력하시오: ");
        y = input.nextInt();

        sum = x+y;

        System.out.println(sum);
    }
}

이 프로그램으로 라이브러리/클래스, 매소드, 객체/변수를 알아보겠다.

 

 

 

1. 라이브러리 / 클래스

  1-1 라이브러리 클래스

자바의 장점 중 하나는 다양한 클래스를 지원한다는 점이다.

이 식은 java.util 패키지Scanner 클래스를 import한다는 커맨드이다.

이 패키지들을 자바 클래스 라이브러리 라고 한다.

다음은 인텔리제이에서 라이브러리 목록을 펼친 것이다.

패키지들을 눌러보면, 사용할 수 있는 클래스들이 들어있다.

 

 

  1-2 public class

public class Practice가 생성되어있다.

 

다음은 인텔리제이에서 짠 코드인데,

파일을 만들 때 입력한 이름이 그대로 public class에 입력되어있는 것을 알 수 있다.

 

이를 식별자 라고 하는데, 이 식별자를 입력하는 규칙이 있다.

  • 식별자는 유니코드 문자와 숫자의 조합으로 만들어진다. (한글도 가능하다)
  • 식별자의 첫번째 문자는 일반적으로 유니코드 문자여야 한다. (_와 $로 시작할 수 있지만 지양한다.)
  • 식별자의 두번째 문자부터는 숫자와 문자가 간으하다. (_와 $도 입력이 가능하다.)
  • 대문자와 소문자는 구별된다.
  • 식별자의 이름으로 키워드를 사용하면 안된다. 

다음은 자바의 키워드이다.

abstract assert boolean break byte
case catch char class const
continue default do double else
enum extends final finally float
for goto if implements import
instanceof int interface long native
new package private protected public
return short static strictfp super
switch synchronized this throw throws
transient try void volatile while

* true, false, null도 변수로 사용할 수 없다.

 

 


2. 매서드

파란색 부분인 main 매서드부터 실행이 시작된다.

이 매소드 안에서 변수를 설정하고, 객체를 선언하고 값을 입력하고 출력하고 하는 코드를 짜는 것이다.

 


3. 객체/변수

아까 import 했던 Scanner 클래스를 사용하기 위해서는 객체에 집어넣어줘야 한다.

Scanner 객체에 변수 input을 선언해주고 값(은 아니지만) new Scanner(System.in)을 넣어준다.

 

 

 

변수에는 기초형과 참조형 두가지가 있다.

기초형은 지금까지 내가 다뤘던 것이다.

int 자료형에 변수 x를 선언한다.

int 자료형에 변수 x를 선언해주고 값 3을 넣어준다.

 

 

참조형 변수와 기초형 변수 둘 다 상자로 비유하곤 한다.

이 두개의 코드는 다음과 같이 표현할 수 있다.

input과 x 둘 다 4byte를 받을 수 있는데, 

참조형은 객체를 집어넣으려고 보니??

크기가 너무 크기 때문에 그냥 주소만 가리키기만 한다. 라고 이해했다.

반응형

댓글