对像操作符 ?

来源:7-2 继承

weixin_慕的地9259617

2020-09-28 12:12

如果使用父类定义对像 "person",并 new 子类实例 "Student()" 赋值,该对像不能访问子类定义的方法,为什么使用对像操作符(if(xxx is xxxx)){} 就可以访问 ? 这个不太理解.

if(person is Student) {
  person.study();
}


写回答 关注

2回答

  • weixin_宝慕林1158390
    2021-09-13 11:35:49

    相当于做了判断,只有是studet实例才会走到if内部,反过来走到if内部的一定是student,所以可以访问student方法

  • 阿巴阿巴_
    2020-09-29 13:27:53

    可以假设访问但实际没有执行也不会执行 因为person is Student 是false。

    weixin...

    person is Student 自己打印下看是true还是false

    2022-12-14 18:10:05

    共 1 条回复 >

Flutter开发第一步-Dart编程语言入门

Flutter开发语言-Dart编程入门,为大家上手及进阶Flutter打下坚实基础。

33620 学习 · 107 问题

查看课程

相似问题