인프런 커뮤니티 질문&답변

kongdole님의 프로필 이미지
kongdole

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

6. 뒤집은 소수

강사님 소수 구하는 부분에서 질문있습니다!

작성

·

289

·

수정됨

0

여기서 num이 2일때는 어떻게 진행되나요?

 

i=2 부터인데 i<2 일때 까지 작용하는 조건이잖아요

 

자연수가 2일때 이렇게 해도 정상적으로 작동되나요?

 

 

그리고 문법적인걸로 궁금한게 있는데

보통 Main 에서 solution 메서드 쓰기 위해서 T 를 통해서 객체에 접근하잖아요

그런데 이번에 isPrime에 접근할 때

왜 메인 객체를 생성하지 않고 접근이 가능한건가요?

main은 static에 올라가 있고 나머지 solition이랑 isprime은 non-static이라서 non-static 끼리는 서로 바로 이용이 가능한걸까요?

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

  1. 2는 for문이 돌지 않고 바로 return true; 문을 실행합니다.

  2. non-static 메서드끼리는 따로 객체를 생성해서 호출하지 않아도 됩니다. non-static 메서드가 실행되고 있다는 뜻은 이미 클래스 객체(인스턴스)가 생성되어 non-static 메서드를 작동시키고 있다고 생각해야 합니다. 이렇게 이미 생성되어 solution 메서드를 호출한 객체를 this객체라고 하고 solution에서 isPrime를 호출할 때 실제는 this.isPrime()으로 호출하는데 this는 생략이 가능해서 주로 생략하고 호출합니다. 저는 이렇게 알고 있는데 정확한지는 모르겠습니다. 구글에서 "인스턴스 멤버와 this"로 구글링해서 공부해보세요.

kongdole님의 프로필 이미지
kongdole
질문자

이해가 확실히 됐습니다 감사합니다!!!

kongdole님의 프로필 이미지
kongdole

작성한 질문수

질문하기