1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > JAVA抽象类实例化对象实现接口的三种调用方法

JAVA抽象类实例化对象实现接口的三种调用方法

时间:2018-10-10 07:59:53

相关推荐

JAVA抽象类实例化对象实现接口的三种调用方法

在笔者的学习过程中抽象类实例化对象实现接口,笔者发现了三种表示方法。第一种是要实例化接口和抽象类,再用实例化的对象调用重写的的方法,这比较繁琐;第二种是直接实例化抽象类,将抽象类进行强转成对象,因为对象中重写了抽象类和接口中的抽象方法,再调用对象本身重写后的方法;第三种是直接实例化对象,用对象本身重写的方法。这里笔者将这三种方法分享给大家,笔者推荐使用第三种

1:先写一个抽象类:

package com.JieKou_03;public abstract class Animal {private String name;private int age;public Animal(String name, int age) {this.name = name;this.age = age;}public Animal() {}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 abstract void eat();}

2:再写一个接口:

package com.JieKou_03;public interface Jimp {public abstract void jumpping();}

3:再创建一个抽象类的实例化对象,并且实现接口:

package com.JieKou_03;public class Cat extends Animal implements Jimp{public Cat(String name, int age) {super(name, age);}public Cat() {}@Overridepublic void eat() {System.out.println("猫吃鱼儿");}@Overridepublic void jumpping() {System.out.println("猫可以跳高翻墙了");}}

第一种:例化接口和抽象类,再用实例化的对象调用重写的的方法

package com.JieKou_03;public class AnimalTest01 {public static void main(String[] args) {Animal a=new Cat("汤姆",2);a.eat();Jimp j=new Cat();j.jumpping();System.out.println(a.getName()+","+a.getAge());}}

第二种:直接实例化抽象类,将抽象类进行强转成对象,因为对象中重写了抽象类和接口中的抽象方法,再调用对象本身重写后的方法

package com.JieKou_03;public class AnimalTest02 {public static void main(String[] args) {Animal a=new Cat("杰克",2);a.eat();((Cat)a).jumpping();System.out.println(a.getName()+","+a.getAge());}}

第三种:直接实例化对象,用对象本身重写的方法

package com.JieKou_03;public class AnimalTest03 {public static void main(String[] args) {Cat c=new Cat("约翰",8);c.eat();c.jumpping();System.out.println(c.getName()+","+c.getAge());}}

综上:笔者推荐第三种方法来调用方法,这是最简单的,没有第一种的繁琐,也没有第二种需要强转。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。