• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

Java 에서도 Porinter 라는 개념이 있나요?

21.12.22 19:39 작성 조회수 452

0

안녕하세요.
메모리 부분 설명해주실 때 Pointer라는 용어를 사용하시던데 Java에 포인터라는 개념이 있나요? Reference를 Pointer라고 하시는 건지 의문이 생겨 질문합니다!
 

답변 3

·

답변을 작성해보세요.

1

네 그렇게 이해하시면 됩니다.

단, C언어에서는  ㆍ 과 -> 로 접근하는 방식이 있는데 이부분은 C언어 영역이라 책을 한번 보시면 좋겠습니다~~

해마님의 프로필

해마

질문자

2021.12.25

답변 감사합니다!! 아주 잘 이해됐어요!! 강의 다 들으면 C도 한번 봐야겠네요!

1

포인터나 레퍼런스나 모두 메모리 번지를 가리키고 있다는 부분에서는 의미는 비슷한데 사용법은 C언어와 Java에서는 조금 다르다고 보시면 좋겠습니다. 일단 자바에서는 

객체를  아래 생성하면

A a=new A();

a를 부르는 이름이 인스턴스변수, 레퍼런스변수,포인터변수 다양하게 부릅니다. 가장많이 부르는 변수는 인스턴스변수라고 합니다.

그리고 A개체 안에 있는 멤버들을 접근할때

a. 이렇게 ㆍ(dot,도트,참조연산자)을 찍고 접근을하게 됩니다. 이런점에서 C언어의 포인터와 비슷하구요^^

 

해마님의 프로필

해마

질문자

2021.12.25

그렇다면 c언어에서는 멤버에 접근하는 방법이 두 가지(포인터, dot)이고, Java는 한 가지(dot)라고 생각하면 되는 걸까요? 그리고 그 한 가지 방식에 접근하는 것을 그냥 pointer라고 같이 묶어서 지칭해주신 거라고 이해하면 되나요?

1

네 레퍼런스를 포인터 개념으로 설명한것입니다. 레퍼런스,참조,포인터 비슷한 개념으로 이해하시고 자바에서는 참조(reference)를 더 많이 사용한다고 보면 되겠습니다.

해마님의 프로필

해마

질문자

2021.12.25

답변 감사합니다! 비슷하다고 하시니 궁금한 게 생기는데, 사용방법이 비슷하다는 의미일까요? 아니면 작동방식이 비슷하다는 것일까요?