7.8

作者: 竹台师 | 来源:发表于2018-07-09 00:06 被阅读0次

面向对象的三个特性之一。多态

多态:一类事物的多种表现形式。人:男人,女人,妖    动物:阿猫,阿狗

在java中

1.重载:在一个类中一个方法功能的多种表现形式

重写:父子类对于同一个方法表现出不同的形式

2.对象的多态性:若编译时和运行时类型不一致,就出现多态(Polymorphism)

java程序的编译运行分为两种状态:在多态的情况下

编译时,“看左边”,看的是父类的引用(父类中不具备子类特有的方法)

运行时,“看右边”,看的是子类的对象(实际运行的是子类重复父类的方法)

向上转型与向下转型

引用数据类型之间的转换:前提都先有继承

向上转型upcasting:子类转父类    系统自动完成

注意:一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就不能再访问子类中添加的属性和方法

向下转型downcasting:父类转子类  需要使用强制类型转换符()

注意:前提父类原先指向的就是本身对象才能向下转型成功,如果父类原先指向的是其他类型(父类的,兄弟类的)的对象,那么就会发生 java.lang.CastException类型转换异常。

7.8 7.8

instance

引用类型对象能用的运算符:

=:赋值  引用变量=对象

==和!=:比较两个对象的地址

+:必须与String拼接

其他运算符都不能直接用于对象

唯一一个只用于引用类型的运算符:instanceof

x  instanceofA:检验x是否为类A的对象,返回值为boolean型

要求X所属的类A必须是子类和父类的关系,否则编译错误

如果X属于类A的子类B,x instanceofA也为 true

7.8

多态的原则

多态的前提:1.要有继承或者实现关系 2.要有方法的重写

成员方法:

编译时:要查看引用变量所属的类中是否有所调用的方法。

运行时:调用实际对象所属类中的重写方法。

成员变:

不具备多态性,只看引用变量所属的类。

属性也会继承到子类中,子类也可以定义和父类同名的属性。但是属性不具备多态性,编译与运行都只看左边

7.8

相关文章

  • Cenos7 SkyWalking7.0 +elasticsea

    安装elasticsearch7.8 下载elasticsearch7.8 安装准备: 创建elasticsear...

  • docker容器Elastic7.8+Kibana7.8设置密码

    ElasticSearch7.8配置 Kibana7.8配置 Elastic内置用户 elastic:内置超级用户...

  • 二十分钟、见证奇迹

    神奇的7.8

  • 7.8

    同样一件事换一种方式去做,可能就会得到意外的惊喜。 关于打电话方面,说话的方式和内容很重要,不能一味地只是自己说,...

  • 7.8

    人有时候真的需要来一场说走就走的旅行,不过这旅行还真是有点让人紧张啊

  • 7.8

    面向对象的三个特性之一。多态 多态:一类事物的多种表现形式。人:男人,女人,妖 动物:阿猫,阿狗 在java中 ...

  • 7.8

    感恩身边的每一个人,给予我帮助和鼓励

  • 7.8

    一件事情坚持久了会变得枯燥乏味,甚至会忘了坚持的意义在哪里,只是一心想要去完成这件事情。 大概生活真的需要仪式感,...

  • 7.8

    早8.00起看英语,11.00送卢逸薇回家,下午3.30学法学到7.30

  • 7.8

    第一次下市场要资源,有点不顺,明天重新调好心态

网友评论

      本文标题:7.8

      本文链接:https://www.haomeiwen.com/subject/zxbauftx.html