/* * 抽象方法和抽象类 * * 1.什么是抽象方法 * 定义:一个方法如果没有方法体(一个方法,不使用{},直接使用分号结束的方法,才是没有方法体的方法),则这个方法就是抽象方法 * 一、声明一个方法,不使用{},而直接分号结束 * 二、如果是抽象方法,必须使用abstract(抽象关键字来修饰) * 2.什么是抽象类 * 一、如果一个类中有一个方法时抽象的方法,则这个类就是抽象类。 * 二、如果声明一个抽象类,则这个类必须使用abstract抽象关键字来修饰 * 注意: * 1.只要使用abstract修饰的类,就是抽象类 * 2.抽象类是一个种特殊的类,特殊在抽象类中可以有抽象方法 * 3.除了在抽象类中可以有抽象方法外,和正常的类完全一样。 * 接口是一种特殊的抽象类 * 1.抽象类和接口中都有抽象方法 * 2.抽象类和接口都不能创建实例对象 * 3.抽象类和接口的使用意义相同 作用相同 * 接口和抽象类相比; * 1.接口中的方法,必须全要是抽象方法(不能用不抽象的方法) 不需要使用abstract 直接使用分隔结束 * 2.接口中的成员属性,必须是常量(不能有变量) * 3.所有的权限必须是公有属性(public) * 4.声明接口不使用class 而是使用interface * 接口应用的一些细节 * 1.接口继承 extends 一个接口继承另一个接口 只有扩展新抽象方法,没有覆盖的关系 * 2.可以使用一个类来实现接口中的全部方法,可可以使用一个抽象类,来实现接口中的部分方法 * (类与接口 抽象类与接口 覆盖 重写 实现接口中的抽象方法) * 3.就不要使用extends这个关键字,使用implements来实现 * * extends继承扩展 一个类只能有一个父类 * 4.一个类可以在继承另一个类的同时,使用implements实现一个接口 也可以实现多个接口 (一定要先继承,再实现接口) * 5.实现一个接口,必须实现接口中所有定义的方法,不能有任何遗漏。 */ //抽象类 abstract class Person{ //抽象方法 abstract function say(); } //接口 interface Demo{ const NAME = '津沙港湾'; function test();//可以省略abstract 方法必须是抽象方法 即没有方法体{} } //接口继承 interface Test extends Demo{ } //类 class World{ } //类实现接口 abstract class WebPage extends World implements Demo{ function test(){ } }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。