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

太原做网站的公司网站建设网站开发案例详解光盘下载

太原做网站的公司网站建设,网站开发案例详解光盘下载,WordPress做推广,建筑人才服务中心官网多态语法详解 一#xff1a;概念1#xff1a;多态实现条件 二:重写#xff1a;三#xff1a;向上转型和向下转型1:向上转型#xff1a;1#xff1a;直接赋值#xff1a;2#xff1a;方法传参3#xff1a;返回值 2:向下转型 一#xff1a;概念 1#xff1a;同一个引… 多态语法详解 一概念1多态实现条件 二:重写三向上转型和向下转型1:向上转型1直接赋值2方法传参3返回值 2:向下转型 一概念 1同一个引用调用了同一个方法因为引用的对象不一样所表现出来的行为也不一样。 1多态实现条件 1必须在继承体系下 2子类必须对父类中的方法进行重写 3通过父类引用调用重写的方法 二:重写 重写也称覆盖。重写是子类对父类非静态非private,非final修饰非构造方法等的实现过程进行重新编写。 重写规则 1:方法名参数列表参数类型个数顺序返回类型都要相同返回类型可以构成父子类关系。 2子类重写父类同名的方法时子类方法的访问权限要大于父类的。 3当在父类的构造方法中调用了子类和父类同名的方法时此时会调用子类的方法。 提醒 不要在构造方法中调用重写的方法。 class Person{public String name;public int age;public Person(String name, int age) {this.name name;this.age age;fun();}public void fun(){System.out.println(父类的fun()方法);} } class Student extends Person{public Student(String name, int age) {super(name, age);}public void fun(){System.out.println(子类的fun()方法);} } public class Test {public static void main(String[] args) {Student studentnew Student(张三,20);} }4父类方法被static ,final,private修饰不能重写 三向上转型和向下转型 1:向上转型 子类对象给到了父类对象也可以理解为父类引用引用的是子类对象通过父类的引用去调用父类和子类同名的方法不过调用的是子类的方法。也叫作动态绑定 1直接赋值 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } public class Test {public static void main(String[] args) {Animal animalnew Dog(旺财,3);//父类引用引用了子类对象animal.eat();//通过父类引用访问了和父类同名的子类方法} } 2方法传参 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } class Cat extends Animal{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃猫粮);} } public class Test {public static void fun(Animal animal){animal.eat();//同一个引用引用了同一个方法因为引用的对象不一样所表现出来的行为不一样我们把这种思想叫做多态}public static void main(String[] args) {Dog dognew Dog(旺财,3);fun(dog);fun(new Cat(喵喵,2));} } 3返回值 作返回值返回任意子类对象 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } class Cat extends Animal{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃猫粮);} } public class Test {public static Animal fun(){return new Dog(旺财,3);}public static void main(String[] args) {Animal animalfun();animal.eat();} } 2:向下转型 将一个子类对象经过向上转型后当成父类方法使用再也无法调用子类特有的方法 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } class Cat extends Animal{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃猫粮);}public void barks(){System.out.println(this.getName()摇尾巴);} } public class Test {public static void main(String[] args) {Animal animal new Dog(旺财,3);animal.barks();} } 但有时需要调用子类特有的方法此时:将父类引用在还原为子类对象也就是向下转型。 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}public void barks(){System.out.println(this.getName()摇尾巴);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } class Cat extends Animal{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃猫粮);}} public class Test {public static void main(String[] args) {Dog dognew Dog(旺财 ,2);Animal animal dog;dog**(Dog)** animal;dog.barks();} } 向下转型用的比较少而且不完全万一转换失败运行时就会抛出异常Java中为了提高向下转型的安全性引入了instance,如果表达式为true,则可以安全转换。 class Animal{private String name;private int age;public Animal(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 eat(){System.out.println(this.age在吃饭);} } class Dog extends Animal{public Dog(String name, int age) {super(name, age);}public void barks(){System.out.println(this.getName()摇尾巴);}Overridepublic void eat() {System.out.println(this.getName()吃狗粮);} } class Cat extends Animal{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.getName()吃猫粮);}} public class Test {public static void main(String[] args) {Animal animal new Dog(旺财, 3);if (animal instanceof Dog) {Dog dog (Dog) animal;((Dog) animal).barks();}} }
http://www.yutouwan.com/news/143966/

相关文章:

  • 电脑网站和手机网站怎么做相同路径家居企业网站建设如何
  • 设计类网站策划案交流建筑的网站
  • 网站开发的条件小程序界面设计模板
  • 广告网站建设与制作公司企业手机网站建设精英
  • 模板网站和定制网站有什么区别中国互联网协会投诉平台
  • 网站建设各模块功能简述怎么制作手机app及网站
  • wordpress evo slider pro插件下载漳州seo建站
  • 大庆网站设计网页大型游戏排行榜
  • 做网站公司做网站公司wordpress京豆插件
  • 网站后台版权公司网站点击量如何看
  • 长春网站建设方案推广app ui设计网站
  • 360网站排名怎么做网站搜索引擎优化的内容
  • 中联网站建设关键词排名优化咨询
  • qq推广网站广州安全教育平台登陆
  • 建大型网站需要多少钱做苗木的用什么网站
  • 网站搭建服务合同网站正在建设中的代码
  • 深喉咙企业网站生成系统做贷超网站 前期需要什么分析
  • 长春网络传媒做网站骗钱做网站排名收益
  • 怎样注册网站做销售辽宁省建设监理协会网站
  • 买程序的网站做电子书网站
  • iis怎么设置网站下列哪一项不属于电子商务网站建设
  • 一个网站内容怎么规划个人网站怎么推广
  • 网站建设广告管理深圳网站优化方法
  • 用dw做的网站怎么发布手机网站建设 豆丁
  • 陕西 网站建设动态设计参考网站
  • 网站及其建设的心得体会推销产品的万能句子
  • 天水 网站建设 招聘设计师网址导航官网
  • 网站建设的英文哪个网站可以做翻译兼职
  • 网站建设系统分析包括哪些在线p图网页版免费
  • 萍乡专业的企业网站建设公司济南网站建设 伍际网络