다음 코드에서 몇 개의 객체가 생성됩니까?Java : 코드에 몇 개의 객체가 생성됩니까?
String a, b, c;
a = "1234";
b = a;
c = a + b;
는 I 때문에 단지 A와 B 지점 자신의 데이터에, 대답은 2
입니다 들었다되었다.
c
은 a
과 b
을 사용하는 경우에만 만들어집니다. 그러나, 변수를 선언하는 행위는 이라고 생각하면이 될까요? 이 질문이 막연한가? 나는 3
라고 말했다.
다음 코드에서 몇 개의 객체가 생성됩니까?Java : 코드에 몇 개의 객체가 생성됩니까?
String a, b, c;
a = "1234";
b = a;
c = a + b;
는 I 때문에 단지 A와 B 지점 자신의 데이터에, 대답은 2
입니다 들었다되었다.
c
은 a
과 b
을 사용하는 경우에만 만들어집니다. 그러나, 변수를 선언하는 행위는 이라고 생각하면이 될까요? 이 질문이 막연한가? 나는 3
라고 말했다.
a = "abcd"
은 String
개체를 만들고 값을 "abcd"로 초기화합니다. 그래서 그럼 a + b
다음 c
에 할당 된 새로운 객체를 생성합니다,
b = a
가 a
과 같은 자리에 b
지점을 만드는 하나의 개체입니다. 그러면 두 개의 객체가 생성됩니다.
저는 이것이 선생님이 찾고있는 것이라고 생각합니다. 학생들은이 단계에서'StringBuilder'로 구현되거나'String'이'char []'에 의해 뒷받침되지 않는다는 것을 알기위한 의도는 없습니다. –
나는 대답이 2라고 생각한다. b = a 일 때, 실제로는 a에 대한 참조가있다. 이클립스에서 프로그램을 디버깅 할 때, a와 b는 같은 id를가집니다. 실제로 하나의 Object입니다.
은 이미 언급했습니다. a + b는 StringBuilder 유형의 다른 객체를 만듭니다. – nafas
'String a;'를 수행하면 객체는 어디에 있습니까? 'String a = null; '을하면? –
2 객체는 a = "1234"이고 a는 + B – nafas
입니다. @Aamir String은 java – nafas