마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

()와 new 의 차이점

0 추천
안녕하세요.



    textView = (TextView) findViewById(R.id.textView);
    lm  = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    locationListener = new MyLocationListener();
    
    lm.requestLocationUpdates(
             LocationManager.GPS_PROVIDER,
             1000,
             5,
             locationListener);       
     }



처음에는 () 와 new 의 차이에 대해 의문이 없었습니다. 저는 단순히 ()는 형변환으로 이해를 했습니다.

그런데, ()로 만든 변수에서도 lm.reque... 처럼 메소드 접근이 가능한 것을 보고,

() 와 new의 차이점이 모호해졌습니다.

둘의 차이점이 무엇인지요.

 

익명사용자. (380 포인트) 님이 2015년 8월 9일 질문

1개의 답변

0 추천
전혀 다른 겁니다. 서로 아예 다른 것이다 보니 차이점 운운할 수가 없습니다.

 

()라고 되어 있는 건 형변환이 아니라, 메소드입니다.

new로 시작하는 건 클래스를 생성하는 겁니다.

위의 소스에서

lm = (LocationManager)getSystemService어쩌구저쩌구..... 해서 lm에 클래스가 들어간 것은 getSystemService가 클래스를 반환하기 때문입니다. 클래스를 반환하지 않는 메소드를 호출한 뒤, 저렇게 사용하면 당연히 에러가 날 겁니다.
cc1232 (35,280 포인트) 님이 2015년 8월 10일 답변
...