HarmonyOS ArkTS中定义同一个名字的函数,但是参数不一样,编译报错,不允许吗?

HarmonyOS
2024-12-27 14:24:07
2638浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
fox280

可以参考这个demo去实现方法重载:

class demo2{
  fun1(num: number, num1: number): number;
  fun1(num: number): number;
  fun1(num: number, num1?: number): number {
    if(typeof num1 === 'undefined'){
      return num;
    }else{
      return num + num1
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

或者这个写法也是可以的:

class demo2{  
  fun1(num: number,num1?: number):number{
    if(typeof num1 === 'undefined'){
      return num;
    }else{
      return num + num1
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

调用的时候都是可以用的:

console.log('输出1:' + this.demo2.fun2(2))
console.log('输出1:' + this.demo2.fun2(3,2))
  • 1.
  • 2.
分享
微博
QQ
微信
回复
2024-12-27 17:03:59


相关问题
Web组件获取高度不一样
3155浏览 • 1回复 待解决
HarmonyOS ArkTS不允许any了
811浏览 • 1回复 待解决
鸿蒙和安卓有什么不一样
7134浏览 • 3回复 待解决
#鸿蒙通关秘籍#HSP和HAR有啥不一样
822浏览 • 1回复 待解决