2010-07-05 1 views
4
Dollar dollar= (Dollar) object; 

이 스 니펫은 무엇을합니까? 심지어 자바인가? 아니면 스몰 토크? 스몰 토크를 염두에두고 작성한 TDD에서 찾았습니다.달러 달러 = (달러) 오브젝트; 이것은 무엇을 하는가?

+0

나에게 TDD는 "Test Driven Design"의 머리 글자 어로 개념은 특정 프로그래밍 언어와 관련되어서는 안됩니다 ... 아니면 세 글자에 대한 또 다른 설명이 있습니까? –

+0

예, 테스트 주도 개발 :) 그냥 초보자인데, 배운 것이 아니라 올바른 방법으로 배운다. 특정 언어와 관련이 없어야한다고 말하는 것이 옳습니다. 그러나 그 특별한 선은 나를 곤란하게 만들었습니다. – Kaustubh

답변

9

이것은 자바 일 수 있습니다. 그것은 기본적으로 generic 형식의 개체 (아마도 Object 만)를 Dollar 개체로 캐스팅합니다.

예 :

Object object = ObjectFactory.getObject(); // Gets object 
Dollar dollar = (Dollar) object; // Cast to Dollar object, will throw an exception 
           // if this isn't possible 
dollar.dollarMethod(); // I can now call Dollar methods 
4

그것은 이름 달러와 클래스 달러의 새 변수를 만듭니다. 그런 다음 object라는 변수에 달러를 캐스팅하여 해당 변수에 값을 할당합니다. 유효한 Java 코드입니다. 달러라는 클래스가 있습니다. 그러나 object라는 변수가 클래스 Dollar가 아닌 경우 ClassCastException을 throw 할 수 있습니다.

+3

클래스 달러 여야하는 ** 변수 **가 아닙니다. 해당 변수에 저장된 ** 인스턴스 **는 Dollar (또는 Dollar의 하위 클래스) 인스턴스 여야합니다. –

0

이것은 실제로 제네릭 형식 (개체)을 달러 형식으로 변환합니다.