当前位置: 首页 > news >正文

人力资源网站模板wordpress 作者函数

人力资源网站模板,wordpress 作者函数,太仓网站建设企业网站,app制作成本(1)什么是多态? 同类型的对象,表现出不同的形态。前者指父类,后者指不同的子类 说简单点,就是父类的同一种方法,可以在不同子类中表现出不同的状态,或者说在不同子类中可以实现不同…

(1)什么是多态?

  • 同类型的对象,表现出不同的形态。前者指父类,后者指不同的子类

说简单点,就是父类的同一种方法,可以在不同子类中表现出不同的状态,或者说在不同子类中可以实现不同的效果(重写)。

(2)多态的前提

  • 有继承/实现关系------有了继承才有子父类之分
  • 有父类引用指向子类对象------,如:Animal a = new Dog(); ——小到大,向上转型。这里父类引用指向子类对象,其实相当于把子类对象当父类对象来用,所以这是一种向上转型的引用。
  • 有方法重写------在不同的子类中重写父类方法,实现自己不同的功能。当然也可以不重写,主要是重写这个功能使得每个子类都独具一格,不会全都相同,这是多态重要的一点。

(3)多类的好处

  • 方法使用父类类型作为形参,就可以接收所以子类对象,体现多态的扩展性与便利

(4)多态的表现形式

  • 父类类型  对象名称=new  子类类型();
Fu a=new Zi();

(5)调用的特点

  • 成员变量:编译看左边,运行也看左边
  • 成员方法:编译看左边,运行看右边(子类如果进行方法重写的话,父类里的方法就被覆盖

(6) 多态弊端是什么?

  • 不能调用子类特有功能,因为编译看左边,特有功能表示父类没有,代码直接报错

(7)引用数据类型的转换有几种方式?

  • 自动类型转换
  • 强制类型转换(可解决弊端)
//自动类型转换
Person p=new Student;//小(Student)--->大(Person)
//强制类型转换
Student s=(Student)p;//大(Person)--->小(Student)

(8)强制类型转换能解决什么问题?

  • 可以把对象转换成真正的子类类型,从而调用子类的特有功能
  • 转换类型与真实对象类型不一致会报错
  • 转换的时候用instanceof关键字进行判断它属于哪个子类

(9)综合练习

  • 根据需求完成代码

父类Animal

package duotai;public class Animal {private String color;private int age;public Animal() {}public Animal(String color, int age) {this.color = color;this.age = age;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public void eat(String something){System.out.println("动物在吃"+something);}
}

 子类Dog

package duotai;public class Dog extends Animal{public Dog() {}public Dog(String color, int age) {super(color, age);}@Overridepublic void eat(String something) {System.out.println("此时此刻"+getAge()+"岁"+getColor()+"颜色的狗抱着"+something+"猛吃");}public void lookHome(){System.out.println("狗在看家");}}

子类Cat

package duotai;public class Cat extends Animal{public Cat() {}public Cat(String color, int age) {super(color, age);}@Overridepublic void eat(String something) {System.out.println("此时此刻"+getAge()+"岁"+getColor()+"颜色的猫眯着眼吃"+something);}public void catchMouse(){System.out.println("猫抓老鼠");}
}

Person类

package duotai;public class Person {private String name;private int age;public Person() {}public Person(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}/*public void keepDog(Dog dog,String someting){System.out.println(this.age+"的"+this.name+"养了一条"+dog.getColor()+"的"+dog.getAge()+"岁的狗");dog.eat(someting);}public void keepCat(Cat cat,String someting){System.out.println(this.age+"岁的"+this.name+"养了一条"+cat.getColor()+"的"+cat.getAge()+"的小猫");cat.eat(someting);}//一个一个构造饲养动物的方法,过于繁琐*///构造一个方法,能够接收所有的动物//方法的形参:可以写这些类的父类,就可以接收所以子类对象(多态)public void keepPet(Animal a,String something){//if条件语句判断它属于哪一个子类,进行强转,就可以使用子类特有的方法if(a instanceof Dog ){Dog d=(Dog)a; //Animal强转成DogSystem.out.println(this.age+"的"+this.name+"养了一条"+a.getColor()+"的"+a.getAge()+"岁的狗");a.eat(something);d.lookHome();} else if (a instanceof Cat ) {Cat c=(Cat)a; //Animal强转成CatSystem.out.println(this.age+"的"+this.name+"养了一条"+a.getColor()+"的"+a.getAge()+"岁的小猫咪");a.eat(something);c.catchMouse();}else {System.out.println("没有这种动物");}}
}

测试类

package duotai;public class Test {public static void main(String[] args) {/*Person p1=new Person("西施",15);Dog d=new Dog("粉红",2);p1.keepDog(d,"美味的鸡叉骨");//选中+shift+F6:批量修改Person p2=new Person("花木兰",16);Cat c=new Cat("淡黄",4);p2.keepCat(c,"美味的小鱼干");*/Person p1=new Person("西施",15);Dog d=new Dog("粉红",2);p1.keepPet(d,"美味的鸡叉骨");Person p2=new Person("花木兰",16);Cat c=new Cat("淡黄",3);p2.keepPet(c,"美味的小鱼干");}
}

结果

 注意:

http://www.yayakq.cn/news/872442/

相关文章:

  • 你们需要网站建设宁波网站建设设计方案
  • 百度知道登录长沙网站seo外包
  • 网站seo课设网站开发实战asp制作视频
  • 音乐网站设计centos7.2做网站
  • 苏州专业做网站公司有哪些正确认识部门网站建设
  • 网站建设风景课程设计报告jsp网站开发详解下载
  • 网站建设如何学网站开发与没计是做什么
  • 免费注册网站大全杭州模板建站
  • dede做双语网站深圳专业网站设计公司哪家好
  • 中国站长查询域名备案建站系统开发
  • 网站建设提供源代码有什么用设计师图库网站
  • 北京网站的制作设计做网站用什么软件初二
  • 网站建设无广告中国空间站照片
  • centos 网站搭建全网
  • 山西手动网站建设推荐平台做英文网站建设
  • 滁州市建设工程质量检测协会网站西苑做网站公司
  • 济南专业网站托管公司义乌高端网站设计品牌
  • 淘宝客做网站怎么做WordPress主题先生
  • 网站收录查询临沂seo深圳外贸公司网站
  • 怎么建立微信网站dw网页设计官网
  • 网站建设与优化推广方案地方门户网站的分类
  • 个人网站的前途怎么建立一个个人网站
  • 广州建站网络推广公司wordpress主题详细安装流程
  • 贵阳网站建设方案推广广东个人网站备案
  • 百度网站收录提交厦门公司黄页
  • 杭州滨江区建设局网站网站格式有哪些
  • 重庆建设教育协会网站首页企业网站网页布局
  • 建站系统是什么泰州网页制作
  • 网址站dw制作简单网站模板
  • 湖北网站建设联系电话站酷网图片