-
个人认为:继承也好、接口也好、抽象类也好等等都是为了提高代码的重用性,减少代码冗余;找到对象的公共特点,让这些公共特点单独封装,供对象调用;
查看全部 -
个人认为:继承也好、接口也好、抽象类也好等等都是为了提高代码的重用性,减少代码冗余;找到对象的公共特点,让这些公共特点单独封装,供对象调用;
查看全部 -
4.继承抽象类的关键字是extends;
5.继承抽象类的子类需要具体实现抽象类中定义的抽象方法;
查看全部 -
抽象类介于接口和类之间;接口中的方法是不用实现,类中的方法是必须实现,而抽象类中的方法有一部分方法有实现,有一部分方法没现实;
1.abstract关键字用于定义抽象类;举例:abstrace class aCanEat{...}
2.在抽象方法前面添加abstract关键字的方法,可以标明这个方法是抽象方法不需要具体的实现;举例:{abstract function eat($food)}
3.抽象类中可以包含普通的方法(即有具体实现的方法);
查看全部 -
多态:相同的一行代码(即function(){}这个函数),对于传入不同的接口的实现的对象的时候,表现是不同的,这就是多态;
个人认为多态的优势是:可以把接口的定义以及类对接口的实现,这些代码单独写在一个文件;我们用的时候,只需要定义一个function函数(参数是传过来的对象),检测对象被实例化前的类是否实现了某个接口,如果实现了,就调用那个接口的方法即可;查看全部 -
多态:由于不同类实现(implements)接口内的方法会有不同的定义,即实现不同,称为多态;
一个接口,有多个不同的类来实现(implements),这就是多态查看全部 -
了解接口;
查看全部 -
面向对象--接口
查看全部 -
类实现(implements)某个接口 和 类继承(extends)某个类的对比;
查看全部 -
可以用extends让接口继承接口;
当类实现(implements)子接口时,在类中也需要对父接口的方法具体实现
查看全部 -
接口的名称是不能被实例化的;
可以用instanceof关键字来判断某个对象是否实现了某个接口,例:var_dump($obj instanceof eat);这个表达式返回bool型;
查看全部 -
一个接口,可以有多个类来实现(即不同的类可以使用同一个接口)
查看全部 -
//interface用于定义接口,接口里面的方法可以不实现
格式:interface 接口名{
//接口里面的方法可以不实现
function a($b);
}
//implements关键字用于表示某个接口的实现
格式:class 类名 implements 接口名{
//实现了某个接口之后,必须提供接口中的方法的具体实现(参数也要和接口里的方法参数一样)
function a($b){
这里是方法的具体实现
}
}
查看全部 -
1. parent关键字可以用于调用(即访问)父类中被子类重写的方法;
2. self关键字不仅可以用于访问类自身的静态成员(即静态属性和静态方法),也可以用于访问类自身的成员方法(即静态和非静态的方法都可以使用self访问)和类中定义的常量(const Const_Value="";这是在类中定义常量的格式);
但不能用于访问类自身的非静态属性; 访问常量的时候不需要在常量名称前面加$符号,举例self::Const_Value;;
3. static关键字用于访问自身定义的静态成员(即静态属性和静态方法);访问静态属性时需要加$符号;
查看全部 -
parent关键字可以用于调用父类中被子类重写的方法;
查看全部
举报