PHP 类和接口
<?PHP // PHP_version = 7.4.1 interface @R_272_4045@ion { // __say(): print class name public function __say():void; // __msg(): print attributes and method of class public function __msg():void; } class back implements @R_272_4045@ion { private $back_name; private $back_age; // interface function public function __say():void { echo PHP_EOL; echo "this_class_name = " . __CLASS__ .PHP_EOL; } // interface function public function __msg():void { echo PHP_EOL; echo "this_class_name = " . __METHOD__ .PHP_EOL; echo __CLASS__ . ".FUNCTIONS = " . "6, say, msg, display, set, get_name, get_age ." .PHP_EOL; echo "this_class_name = " . __METHOD__ .PHP_EOL; echo __CLASS__ . ".ATTRIBUTES = " . "2, name, age." .PHP_EOL; } public function set($name, $age) { $this -> back_name = $name; $this -> back_age = $age; } public function get_name() { return $this -> back_name; } public function get_age() { return $this -> back_age; } public function display() { echo PHP_EOL; echo "name = " . $this -> back_name ; echo " , age = " . $this -> back_age .PHP_EOL; } public function say() { $this -> __say(); } public function msg() { $this -> __msg(); } } // instances of back $tmp = new back(); $tmp -> say(); $tmp -> msg(); // test set() display() $tmp -> set("laohu", 3); $tmp -> display(); // test get_name() and get_age() $temp_name = $tmp -> get_name(); echo "temp_name = " . $temp_name .PHP_EOL; $temp_age = $tmp -> get_age(); echo "temp_age = " . $temp_age .PHP_EOL; ?>
输出结果:
// 输出结果 this_class_name = back this_class_name = back::__msg back.FUNCTIONS = 6, __say, __msg, display, set, get_name, get_age . this_class_name = back::__msg back.ATTRIBUTES = 2, name, age. name = laohu , age = 3 temp_name = laohu temp_age = 3
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。