다음 코드의 실행 결과는?
다음 코드의 실행 결과는?
<?php
trait Math {
public function add($a, $b) {
return $a + $b;
}
}
trait Text {
public function uppercase($text) {
return strtoupper($text);
}
}
class Calculator {
use Math, Text;
}
$calc = new Calculator();
echo $calc->add(5, 3);
echo " ";
echo $calc->uppercase("hello");
?>
정답: A
이 코드는 하나의 클래스에서 여러 트레이트를 동시에 사용하는 예제입니다.
다중 트레이트 사용:
⦁ 문법:
use Math, Text;
(콤마로 구분)⦁ 모든 메서드 포함: 두 트레이트의 모든 메서드가 Calculator 클래스에 포함됨
⦁ 독립적 동작: 각 트레이트의 메서드들이 서로 영향을 주지 않음
실행 과정:
1.
$calc->add(5, 3)
호출⦁ Math 트레이트의
add()
메서드 실행⦁
5 + 3 = 8
반환2.
$calc->uppercase("hello")
호출⦁ Text 트레이트의
uppercase()
메서드 실행⦁
strtoupper("hello") = "HELLO"
반환최종 출력: "8 HELLO"
💡 학습 팁
이 문제를 포함한 PHP 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.