inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2027 대비!) 일주일만에 합격하는 정보처리기사 실기

▶ 이론 통합 요약본 파일 다운 받는 곳 ◀ (v2.0)

정보처리기사_실기_이론파트 p16의 7번 Java static 개념 문제 질문

해결된 질문

157

한상연

작성한 질문수 1

0

정답 부분에서 김길동 1 부분이 이해가 가지 않아 질문드립니다.

'김길동 2' 가 답인줄 알았는데..

왜 인구 2인데 김길동 2 가 아닌지 궁금합니다..

person_count++와 age++는 하나의 단락안에 있어 인구 2면 김길동 2/ 인구 1이면 김길동 1로 되어야 하는 거 아닌가요?

python java c 정보처리기사

답변 2

0

주말코딩

저기 1은 age입니다.

age는 인스턴스 메서드로 공용 공간이 아니라 각자 가지고 있는 변수입니다.

 

지금 age는 생성될 때 생성자를 통해 1만 증가됩니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 한상연님.

질문 주신 Java의 static 개념 문제는 프로그래밍에서 static 변수와 그 작동 방식을 이해하는 데 중요한 역할을 합니다. static 변수는 클래스 레벨에서 공유되며, 클래스의 모든 인스턴스들이 이 변수를 공유합니다. 따라서 인구(person_count) 값이 증가함에 따라 person_count++로 static 변수를 증가시키게 되고, 이 값은 모든 인스턴스에게 모두 동일하게 적용됩니다.

  1. static 변수의 특성: static 변수(person_count)는 클래스에 소속되므로, 생성된 모든 객체가 이 변수 값을 공유하게 됩니다. 따라서 한 인스턴스에서 변수를 증가시키면 다른 모든 인스턴스에도 같은 변경이 반영됩니다.

  2. age++의 동작 방식: 반면에 age는 인스턴스 변수로, 새로운 객체가 생성될 때마다 새롭게 할당됩니다. 각 객체만의 고유한 값을 가지게 되므로, 다른 인스턴스와 공유되지 않습니다.

다시 말해, 객체가 생성될 때마다 person_count가 증가하므로 인구(person_count) 값이 2이라면 ‘김길동 1’에서 생성된 객체가 ‘김길동 2’로 불리지 않는 이유는, 이 이름은 인스턴스가 속한 곳에서 특정 인덱스와는 관련이 없이 각자의 값을 가지기 때문입니다.

자세한 예시와 설명은 아래의 기존 질문 관련 답변을 참고해 주세요:

이 과정을 이해하시고 어떤 상황에서 인스턴스 변수와 static 변수를 쓰는 게 적절한지 알아두시면 도움이 될 것입니다. 🙂

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

0

한상연

답변 감사합니다.

정리하자면 person_count 앞에 static이 붙여있기 때문에 변수 값을 공유하게 되는거고

age는 public이기 때문에 새로운 객체가 생성될 때마다 새롭게 갱신된다는 말씀이신가요?

 

전 CLass Person안에 person_count랑 age 둘다 있는데 왜 둘다 변수값을 공유하는게 아니지? 라고 의문의 들었습니다.

0

한상연

그리고 링크 걸어주신건... 재귀함수와 관련된거 같은데

static 변수와 인스턴스 변수 차이점에 관한 링크가 맞는지 확인부탁드립니다.

정처기 2026-3 실기 문의

0

88

2

정처기 실기 3회 컴싸 사용 여부

0

55

1

모의고사 1 회 2번문제 중

0

73

2

26-2 이론문제 재탕

1

56

1

26-2년도 코드문제

0

38

0

26-2 코드문제

0

44

1

15분 48초 질문

0

61

2

26-1년도 이론문제 재탕

0

68

1

26-1년도 코드문제 재탕

0

48

0

이론재탕만 눈치챘어도

0

77

1

25-3년도 이론문제 재탕

0

59

1

25-3년도 코드문제 재탕

0

43

0

출력값 문의

0

56

2

25-2 분기커버리지

0

48

0

25-2 이론 재탕

0

70

1

25-1 이론 재탕

0

54

1

서브넷 마스크

0

55

2

모의고사 1회 계산문제 2개 맞았는데

0

70

2

업캐스팅 문제 예시 4번 부모 호출

0

51

2

모의고사 자료 해설이 너무 불친절하네요.

0

96

2

부모의 생성자 출력 관련

0

50

2

24-3 이론파트 재탕문제

0

58

0

누락코드

0

47

1

다차원 배열 포인터 질문있습니다

0

72

3