avaScript中实现接口的方法有三种:
第一种,使用注释的方法实现接口
特点: (1)最简单,但是功能最弱 (2)利用 interface和 implement"文字" (3)把他们用注释的方式表现出来 具体实现如下: 1,用注释定义一个接口
/* * interface PersonDao(){ * function add(obj); * function remove(obj); * function find(id); * } * */
(2)用注释来注明实现的接口
/* * PersonDaoImp implement PersonDao (PersonDaoImp实现接口PersonDao) * */ var PersonDaoImp=function () { };//定义实现类 //实现 PersonDaoImp.prototype.add=function(obj){ //具体代码 } PersonDaoImp.prototype.remove=function(obj){ //具体代码 } PersonDaoImp.prototype.find=function(id){ //具体代码 }
总结:
(1)使用文字的形式告知是谁实现谁 (2)优点,这样是很有意义的,大型项目需要的就是规范和标准,可以在没有写实现之前充分考虑架构和设计 (3)缺点:需要人为的遵守注释中的说明
第二种,使用属性检验法实现接口 。 实质为通过一个属性判断实现了谁 具体如下:
1,用注释来定义一个接口
/* * interface PersonDao(){ * function add(obj); * function remove(obj); * function find(id); * } * */
2,用注释来说明实现接口类+实现类中增加属性
/* * PersonDaoImp implement PersonDao * */ var PersonDaoImp=function () { this.implementInterface=["PersonDao"];//告知该类实现的接口是啥是一个数组, } PersonDaoImp.prototype.add=function(obj){ alert(obj); } PersonDaoImp.prototype.remove=function(obj){ //具体实现 } PersonDaoImp.prototype.find=function(id){ //具体实现