책 내용 질문하기
2024 정처기 실기 기출문제집
도서
2024 시나공 정보처리기사 실기 기본서
페이지
144
조회수
190
작성일
2024-07-22
작성자
이*은

21년 10월 시행


문제 1번



Connection 클래스에 있는

static 변수 _inst 와 static 메소드 get() 앞에

클래스명 Connection 은 왜 붙은 것일까요?


static 변수/메소드 나온 문제 중 클래스명이 붙은 건 처음 봐서 질문드립니다.

답변
2024-07-23 18:05:01

안녕하세요 길벗수험서 운영팀입니다.

Connection 클래스의 객체변수를 선언한다고 표현하기 위해 클래스명을 붙여준것 입니다

Connection 클래스의 객체 변수 _inst를 생성하는것이 아니라 선언만 하는 코드입니다.

이렇게 객체 변수를 선언만 하면 heap영역이 아닌 stack 영역에 내용없이 저장만됩니다.

private static Connection _inst = null; 이렇게 객체변수를 선언만 했기 때문에

이후 코드에서 객체 변수를 생성을 할때 클래스명을 생략하여 _inst = new Connection( ) 이렇게 코드를 작성한것입니다

static 메소드 get() 앞에 클래스명 Connection 을 썼는데

get( ) 메소드의 결과를 반환할때 Connection 형을 반환하겠다고 작성을 해놓은것 입니다

행복한 하루되세요 :)

  • 관리자
    2024-07-23 18:05:01

    안녕하세요 길벗수험서 운영팀입니다.

    Connection 클래스의 객체변수를 선언한다고 표현하기 위해 클래스명을 붙여준것 입니다

    Connection 클래스의 객체 변수 _inst를 생성하는것이 아니라 선언만 하는 코드입니다.

    이렇게 객체 변수를 선언만 하면 heap영역이 아닌 stack 영역에 내용없이 저장만됩니다.

    private static Connection _inst = null; 이렇게 객체변수를 선언만 했기 때문에

    이후 코드에서 객체 변수를 생성을 할때 클래스명을 생략하여 _inst = new Connection( ) 이렇게 코드를 작성한것입니다

    static 메소드 get() 앞에 클래스명 Connection 을 썼는데

    get( ) 메소드의 결과를 반환할때 Connection 형을 반환하겠다고 작성을 해놓은것 입니다

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.