• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

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

23.02.03 12:26 작성 23.02.03 12:38 수정 조회수 250

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

질문자

2023.02.04

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