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

自己怎样做网站文章关键词内链贵阳网站建设推广

自己怎样做网站文章关键词内链,贵阳网站建设推广,泉州网站设计,长沙网站制作公司推荐多态数组 应用实例:现有一个继承结构如下:要求创建 1 个 Person 对象、2 个 Student 对象和 2 个 Teacher 对象, 统一放在数组中,并调用每个对象 代码 Person类 package com.hspedu.poly_.polyarr_;import javax.swing.*;/*** author:寰愬悏瓒&#xf…

多态数组

在这里插入图片描述

应用实例:现有一个继承结构如下:要求创建 1 个 Person 对象、2 个 Student 对象和 2 个 Teacher 对象, 统一放在数组中,并调用每个对象

代码
Person类

package com.hspedu.poly_.polyarr_;import javax.swing.*;/*** @author:寰愬悏瓒�* @date:2024/12/14 version:1.0*/
public class Person {private String name;private int age;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 String say() {return name +"\t" +  age;}
}

Student类

package com.hspedu.poly_.polyarr_;
import com.hspedu.poly_.polyarr_.Person;
/*** @author:寰愬悏瓒�* @date:2024/12/14 version:1.0*/
public class Student extends Person {private double score;public Student(String name, int age, double score) {super(name, age);this.score = score;}public double getScore() {return score;}public void setScore(double score) {this.score = score;}// 重写父类 say@Overridepublic String say() {return "学生 " + super.say() + " score = " + score;}
}

Teacher类

package com.hspedu.poly_.polyarr_;public class Teacher extends Person {private double salary;public Teacher(String name, int age, double salary) {super(name, age);this.salary = salary;}public double getSalary() {return salary;}public void setSalary(double salary) {this.salary = salary;}
// 重写父类的say() 方法@Overridepublic String say() {return "老师 " + super.say() + " salary= " + salary;}
}

PloyArray类

package com.hspedu.poly_.polyarr_;/*** @author:寰愬悏瓒�* @date:2024/12/14 version:1.0*/
public class PloyArray {public static void main(String[] args) {
/*
* 应用实例:现有一个继承结构如下:要求创建 1 个 Person 对象、
* 2 个 Student 对象和 2 个 Teacher 对象, 统一放在数组
中,并调用每个对象
*/Person[] persons = new Person[5];persons[0] = new Person("jack",20);persons[1] = new Student("jack",18,100);persons[2] = new Student("smith",19, 30.1);persons[3] = new Teacher("scott",30,20000);persons[4] = new Teacher("king",50,25000);//        循环遍历多态数组,调用sayfor(int i = 0; i < persons.length; i++ ){
//            person[i] 编译类型是 Person, 运行类型是 根据实际情况由JVM来判断System.out.println(persons[i].say());//动态绑定机制}}
}

应用实例升级:

如何调用子类特有的方法,比如
Teacher 有一个 teach , Student 有一个 study
怎么调用?
Teacher类增加teach()方法

//    特有的方法public void teach() {System.out.println("老师 " + getName() +" 正在上课");}

Student类增加study()方法

//    特有方法public void study() {System.out.println("学生 "  + getName() + " 正在学java");}

修改PloyArray类

package com.hspedu.poly_.polyarr_;public class PloyArray {public static void main(String[] args) {
/*
* 应用实例:现有一个继承结构如下:要求创建 1 个 Person 对象、
* 2 个 Student 对象和 2 个 Teacher 对象, 统一放在数组
中,并调用每个对象
*/Person[] persons = new Person[5];persons[0] = new Person("jack",20);persons[1] = new Student("mary",18,100);persons[2] = new Student("smith",19, 30.1);persons[3] = new Teacher("scott",30,20000);persons[4] = new Teacher("king",50,25000);//        循环遍历多态数组,调用sayfor(int i = 0; i < persons.length; i++ ){
//            person[i] 编译类型是 Person, 运行类型是 根据实际情况由JVM来判断System.out.println(persons[i].say());//动态绑定机制if(persons[i] instanceof Student) { // 判断person[i] 的运行类型是不是 StudentStudent student = (Student)persons[i]; //向下转型student.study();// 也可以使用一条语句 ((Student)persons[i]).study();} else if(persons[i] instanceof Teacher) {Teacher teacher = (Teacher)persons[i];teacher.teach();} else if(persons[i] instanceof Person){} else {System.out.println("你的类型有问题,请自己检查...");}}}
}

多态参数

在这里插入图片描述
代码:
Employee类

package com.hspedu.poly_.polyparameter_;public class Employee {private String name;private double salary;public String getName() {return name;}public void setName(String name) {this.name = name;}public double getSalary() {return salary;}public void setSalary(double salary) {this.salary = salary;}public Employee(String name, double salary) {this.name = name;this.salary = salary;}//得到年工资的方法public double getAnnual() {return 12*salary;}
}

Manager类

package com.hspedu.poly_.polyparameter_;public class Manager extends Employee {private double bonus;public Manager(String name, double salary, double bonus) {super(name, salary);this.bonus = bonus;}public double getBonus() {return bonus;}public void setBonus(double bonus) {this.bonus = bonus;}public void manage(){System.out.println("经理 " + getName() + " is manageing");}//重写获取年薪方法@Overridepublic double getAnnual() {return super.getAnnual()+bonus;}
}

Worker类

package com.hspedu.poly_.polyparameter_;public class Worker extends Employee{public Worker(String name, double salary) {super(name, salary);}public void work() {System.out.println("员工 " + getName() + " is working");}//因为普通员工没有其它收入,则直接调用父类方法@Overridepublic double getAnnual() {return super.getAnnual();}
}

Ployparameter类

package com.hspedu.poly_.polyparameter_;import com.sun.corba.se.spi.orbutil.threadpool.Work;public class Ployparameter {public static void main(String[] args) {Worker tom = new Worker("tom", 2500);Manager milian = new Manager("milian", 5000, 20000);Ployparameter ployparameter = new Ployparameter();ployparameter.showEmpAnnual(tom);ployparameter.showEmpAnnual(milian);ployparameter.testWork(tom);ployparameter.testWork(milian);}//实现获取任何员工对象的年工资,并在 main 方法中调用该方法 [e.getAnnual()]public void showEmpAnnual(Employee e) {System.out.println(e.getAnnual());//动态绑定机制}//添加一个方法,testWork,如果是普通员工,则调用 work 方法,如果是经理,则调用 manage 方法public void testWork(Employee e) {if(e instanceof Worker) {((Worker) e).work();  //向下转型} else if(e instanceof Manager) {((Manager) e).manage(); //向下转型} else {System.out.println("你的类型不对,不做任何处理");}}
}
http://www.hkea.cn/news/419308/

相关文章:

  • 广东省省建设厅网站郴州网站建设网络推广平台
  • 校园网站推广方案怎么做应用商店优化
  • 巩义网站建设网络营销公司是做什么的
  • 做网站基本教程一站式营销平台
  • 杭州模板网站建设电脑培训网上培训班
  • 大连做网站不错的公司怎样把广告放到百度
  • 网站上面带官网字样怎么做的网站设计的流程
  • 有个网站是做视频相册的网球排名即时最新排名
  • 论坛网站备案流程图优化大师怎么提交作业
  • 织梦政府网站模板百度在线入口
  • 专业做婚纱摄影网站会员制营销
  • 网站内容丰富互动营销平台
  • 阿里巴巴logo高清图谷歌seo网站推广
  • 网站如何做内链seo高手是怎样炼成的
  • 设计师个人网站建设怎样注册一个自己的平台
  • 徐州营销网站建设产品线上推广渠道
  • 绍兴市网站建设公司企业官网搭建
  • 关于网页设计的网站免费发布信息网站大全
  • 郑州新闻头条seo基础教程
  • 做网站比较大的公司朔州seo
  • 如何制作私人网站福州专业的seo软件
  • 做网站主流技术南宁在哪里推广网站
  • 老板让我做网站负责人微博营销软件
  • 教我做网站百度打开
  • 网站开发时如何兼容电商运营是做什么的
  • 河北建设银行石家庄分行招聘网站怎么申请自己的网络平台
  • vs2008 做网站搜索引擎的工作原理是什么
  • 东莞常平做网站公司app营销策划方案
  • 爱用建站 小程序重庆网站制作公司
  • 网站建设小企业案例漯河网络推广哪家好