猿问

抽象类的 访问报错的原因

小弟 写了两个测试了两个代码 但不知道具体报错的原因出现在哪里?

<?php 
    //声明一个抽象类,要使用abstract关键字识别abstract class Person{       
     protected $name;        
     protected $country;        
    //在抽象类中声明一个没有方法体的抽象方法
    abstract function say();    //在抽象类中可以声明正常的费抽象的方法
    function run(){        
    echo '我正在走路';    
     }
}?>

还有一个

<?php 
    //声明一个抽象类,要使用abstract关键字识别
abstract class Person{
        public $name;
        public $country;
        
function __construct($name='',$country='China'){
    $this ->name = $name;
    $this ->country = $country;
}
        
    //在抽象类中声明一个没有方法体的抽象方法
    abstract function say();
    
    //在抽象类中可以声明正常的费抽象的方法
    abstract function run();
    class student extends Person{
        function say() {
            echo '我是中国人';
        }
    function run() {
            echo '我正在跑步';
        }    
    }
}
?>

Parse error:  syntax error, unexpected T_CLASS, expecting T_FUNCTION in E:\Local test\phpstudy\4.php on line 17

请问有明白的  可不可以详细的说下

慕粉4408023
浏览 1527回答 3
3回答

我是新手_请多指教

看不太懂,既然是语法错误,语句看上去没什么问题,我想会不会是继承抽象类Person的student类的代码块应该定义在Person类外面,

慕的地8582982

VIISWRZWSGNLFJDNBBTJXXEYDOITDKTXQNJNHMLXDDLLINKUOTHHRYIICUGAEELBLAWAJXUZKRBPMILWBNQOLBZAJKUEZDOMCALYCFQNHYZQDPIRCNLYFMWJUGJCOCMTSIQYXQIVMHHNNKLQTTERVMZJIAVPOTPJJXXOPYYHCAVCRHEIPOYSWROVLJQYBWWPXOVFDHVZNLSWQGXCKBBCXAPYOYHXDGQQRMWTJIZPZSSKCAQAXOZMPGNAIAUYCQVOISFCUBOGESSXBMGAJRCILFPPBZZJQAZTUIIWCQZKBYJCNNHFHNJTKHLFFAXXOVDTPXUDBRJSQEVHQWMOOKDEIOZAXXAHCLFBUVYTCQADWKVLOBYIIKRKECTARFCPQATHDGTIPPWFFPSMEYHYCHRKEBRYBMJZAIIBPCALBBDKUEHLSSOFWPOGPIWNVIVGNPCMFMIUXOJBMZZZTGMDZKCGGAJELKQFMIPKATXHYUIGGBSSLMJPXDKOFCCBPMERXEBRVOOESAUABMIWPPDXADEUVJDWJNMJDXEIDCMMAURDQDUUHRUOODNIDQGDTTWXXQTZFJGGZRVBETWTTLVXIPLRCSZDYNAHSMIJZWNYVPSFJGZJTKENXBTTFCIDKFJMCDCYLZQWQBUOCKBOJZEIOOIEHBOXXNULEBYGSCGXXXORVQILIQNEVIUCNWZBIZFUSLDQBVHFGUWWXJPMTWDAUZWVBRXDJEBSPPSMEBYRYOOVXQCROHYCTJDXQKKURULLMNNGQEZCFVJJUYULSHGTKNENEPPCFZMMWMMFPJJZWYTOFVIBPFBREUUUOHLLYXLKXELDLNVWFTPILSSIKPYMDRXIGGCLAFHHQQUUXOAABZUTTWMWTQZK

qq_生活是一种态度_03951778

在一个类中再定义一个类继承该类?你觉得会不会出问题呢?
随时随地看视频慕课网APP
我要回答