static이라는 것은 정적변수, 즉 고정된 변수라는 것이다.
static이 들어가있는 변수와 메소드들의 특징은 전역적이라는 것이다.
메소드의 전역적이라는말이 여기서 혼동스러울 수 있는데,
각 특징을 알아보자
먼저 static 변수라는 것은 전역변수인데, 전역변수의 특징은 클래스내부의 다른 메소드에서 호출이가능하다.
이것을 이해하려면 먼저 프로그래밍에서 함수라는것을 알아야하는데
일반적으로 클래스안에 함수가 들어가면 우리는 그것을 메소드라고 부르고, 그 메소드와 함수들은 하나의 기능을 역할을하고, 하나의 리턴값을 돌려주는게 원칙적이다.
즉 메소드에서 다른 메소드를 호출할 시, A메소드에서 B메소드를 호출했을시에 그것은 즉 무언가를 담아서 리턴한 전역변수를 사용하는 행위와 같다고 볼수있고,
메소드의 호출은 하나의 과정을 거친 전역변수를 만드는 행위라고 할 수 있다.
만약에 메소드에 리턴이 없다면 그것은 무엇일까. 그것은 그냥 출력하는 행위이고, 그 출력된값은 함수 내부에서만 존재한다.
스태틱 변수라는 것은 하나의 과정이 생략되었지만, 우리가 원하는 리터럴값을 변수에 담는것이다.
클래스 내부에있는 다른메소드들을 호출할때 문제가없듯이, 우리가원하는 값을 스태틱변수로 만들어준것은 그것은 바로, 리턴된결과를 사용하는 것과 마찬가지다.
이거 이해못했으면 프로그래밍 접어야지 ㅇㅅㅇ
static 메소드는 그냥 인스턴스 생성없이 호출가믕하다 정도면 설명끝인디
아님 그런식으로 이해하면 프로그래밍이라는 심연을 이해할수없음
자바 파이썬 자스 등등 모든원리는 비스무리하고 같은데, 그이해가없으면 다른언어를하게될때 암기로외울수밖에없다
난 자바 기준으로 설명햇을뿐임 언어가 그렇게 돼있네
여기가 니 블로그야
일기는 일기장에