Java beginner(자바 초보)

2 분 소요

안녕하세요 Legas 입니다 :).

개발을 시작하기에 앞서 어떤것을 배워야하는지 개발언어의 선택부터 했습니다. 제목처럼 Java를 선택하긴 했지만 Python으로 시작할까 고민도 했습니다.

처음 시작은 인터넷 동영상 공유 사이트에 있는 개발 초보단계 영상을 보고 시작했습니다. 하지만 이렇게 배우다보니 머리속에 들어오는것은 없고 배운 내용으로 변형시킨 문제를 보니 하나도 풀리지 않는게 너무 어렵다보니 하나하나 알아가면서 배우기로 했습니다.

*다른 언어는 배우지 못했기 때문에 Java의 언어로써 이해한대로만 작성하겠습니다.

1. Main Class

대부분의 강의나 저 또한 찾고나서 시작한 강의는 Java언어로 Hello world를 입력하는것이었습니다. 그 전에 앞에 나오는 코드들이 무었인지 알고 시작하려고 합니다.

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

공부를 하거나 배움을 시작할때 왜? 라는것을 자주 질문하기 떄문에 이미 강의를 봤더라도 이러한 형식의 코드를 이해해야지만 다음 단계로 들어갈 수 있는 내 자신이 정말 융통성이 없다고 생각되기도 합니다.

1-1. Public

1. public / static void main(string[] args) / {
}
  • 위의 1번의 public 접근제어자로써 어느곳에서든 해당 객체를 참조할 수 있다는 뜻입니다.

    접근제어자

    접근제어자란 클래스의 맴버(변수와 메소드)들의 접근 권한을 지정한다 라고 표현한다. 그럼 여기서 변수와 메소드는 무었인지 설명하기에 앞서 public의 사용범위를 더 알고 가겠습니다.

    “객체를 참조 할 수 있다”는 뜻에서 “객체”는 무었이고 “참조”는 무었인가.

1-2. Class

객체와 참조

  1. 객체를 이해하기 위해서는 Java 에서의 class라는 것을 알아야합니다.
    • class라는 것은 새로운 “데이터 타입” 입니다. 사용자가 정의한 데이터 타입으로 변수를 선언, 연산자, new생성자를 이용해 메모리를 만든다. (메모리를 만다는것은 데이터 타입에 해당하는 만큼의 메모리를 확보하는 일)
  • class를 만드는것 = 데이터 타입을 만드는것 이러한 타입으로 변수를 선언/활용 할 때 클래스를 이용한 변수를 객체 또는 객체 변수라 합니다.

    이때 객체(객체변수)는 기본 데이터 변수와 다르다. 객체 변수 선언 후 메모리를 생성해줘야지만 완전한 객체라고 할 수 있다. 예시)

      public static void main(String[] args) {
         Example a = new Example();
      }
    
  1. 참조 ‘참조’는 특정한 둘 이상의 물건이나 자료를 서로 비추어보아(照) 판단하는 것을 말한다.

    나무위키 인용 https://namu.wiki/w/%EC%B0%B8%EA%B3%A0%EC%99%80%20%EC%B0%B8%EC%A1%B0 참조라는 정의를 기억하고 Java에서의 참조는 앞으로 배울 포스팅에 올리도록 하겠습니다.

1-3. Main

Main 은 코드로 만들어놓은 프로그램의 시작점이라는 것입니다. 지금 배울단계에서는 Main의 코드만 작성하지만 이후 배우면서 시작점 이후 사용에 대해서 배울 수 있을것 같습니다.

2. Main Method

Main Method는 클래스안의 메인 함수를 부르는 말입니다.

public 2.`static` 3.`void` 4.`main(string[] args)` {
}

함수의 설명을 하기위해 2, 3, 4로 각각 static void main(string[] args)로 분류하였습니다.

2-1. static

static를 사용하는 것은 객체를 새로 생성하지않고 변수나 함수를 바로 사용할 수 있는 키워드 입니다. 메인 함수에 static라는 키워드가 있다면 이미 생성되어있던 class객체를 불러와서 사용할 수 있고.
메인 함수에 static라는 키워드가 없다면 원하는 변수나 함수를 사용하여 코드를 만들어야 합니다.

static의 사용은 이후 공부하면서 다시 글을 작성하도록 하겠습니다.

2-2. void

void를 사용하는 것은 내가 만든 method에서의 결과를 return할 필요가 없는 키워드이다. 여기서 void를 사용하지않으면 method에서 사용한 함수의 결과를 return해줘야지만 한다.

이해를 돕기위해 void가 없는 method에서 예를들어 손보고 병을 잡아라고 했을때 “잡았다”라는 return을 해줘야지만 인식하고 void가 있는 method에서는 손보고 병을 잡아도 “잡았다”라는 것을 할 필요가없을 경우에 return값이 없다라는것을 알리기위해 사용한다.

아직 voidreturn의 정확한 이해를 하지 못했습니다…

2-3. main(String[] args){}

마지막에 나오는 main(String[] args){}는 public class main의 main함수입니다. Java에서는 class안에 있는 함수를 Method라고 불립니다. 따라서 Main class의 main method인것입니다.

다음으로 main괄호안에 들어가는 String[] args 의 String은 문자열로서 []통해 배열로 생성된다는 것입니다. args는 일반적으로 이렇게 사용할 뿐 arrr로 사용해도 무관합니다.

감사합니다.

댓글남기기