arkTS 是否可以判断实例是某个接口的实例

interface A{ 
} 
 
class B implements A{ 
} 
 
let c = new B();

如何判断c是否是A的实现?

HarmonyOS
2024-04-28 00:38:50
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

implements类的函数重载需要在类中声明与所实现接口一致的函数重载声明,可以在interface A中声明一个方法或者属性,让class B实现,初始化c实例则可以调用进行判断,代码如下

export interface MainPoint { 
  imageX?:number 
  imageY?:number 
  isMainPoint():boolean 
} 
 
class ImagePoint implements MainPoint { 
  imageX?:number 
  imageY?:number 
  constructor(x:number,y:number) { 
    this.imageX = x 
    this.imageY = y 
  } 
  isMainPoint(): boolean { 
    return true 
  } 
}

使用判断场景

let point:ImagePoint = new ImagePoint(0,0) 
if(point.isMainPoint()){ 
  console.log('this.point is instance of MainPoint') 
}
分享
微博
QQ
微信
回复
2024-04-28 21:43:04
相关问题
首选项获取实例实例是否为单例
900浏览 • 1回复 待解决
什么PolarDB实例有知道吗?
2385浏览 • 1回复 待解决
C++ 如何获取操作 Arkts 实例
445浏览 • 1回复 待解决
ArkTS实例化与单例介绍
751浏览 • 1回复 待解决
如何判断一个对象实现了某个接口
659浏览 • 1回复 待解决
如何判断某个应用是否为系统应用
871浏览 • 1回复 待解决
如何判断JS对象中是否存在某个
906浏览 • 1回复 待解决
判断是否实现了某接口
48浏览 • 1回复 待解决
DataAbilityHelper.creator()创建实例失败
2775浏览 • 1回复 待解决
rds读写分离需要几个实例 ?
1308浏览 • 1回复 待解决
如何判断对象是某个interface实现
455浏览 • 1回复 待解决
rds读写分离需要几个实例
1586浏览 • 1回复 待解决