`

Java中的接口回调和上转型

阅读更多

1、在Java中可以通过子类的对象的上转型体现继承的多态性,即把子类创建的对象的引用放在一个父类的对象中,便可得到该对象的上转型,那么这个父类的对象便可访问在子类中重写的父类的方法,这就实现了上转型对象在调用方法时的多种形态。不同的上转型对象调用同一方法可能会产生不同的行为。

 

上转型的例子:

package test1;

class Animal{
	void cry(){}
}

class Dog extends Animal{
	void cry(){
		System.out.println("Wang!Wang~~~~");
	}
}

class Cat extends Animal{
	void cry(){
		System.out.println("Miao!Miao~~~");
	}
}

public class Test1 {
	public static void main(String args[]){
		Animal animal;
		animal = new Dog();
		animal.cry();
		animal = new Cat();
		animal.cry();
	}
}

 

 

2、接口回调是多态的另一种体现。指的是可以把使用某一接口的类创建的对象的引用赋给该接口声明的接口变量中,那么该接口变量就可以调用被类实现的接口中的方法,当接口变量调用被类实现的接口中的方法时,就通知相应的对象调用接口的方法,这一过程称为对象功能的接口回调。

 

接口回调的例子:

package test1;

interface Animal{
	void cry();
}

class Dog implements Animal{
	public void cry(){
		System.out.println("Wang!Wang~~~~");
	}
}

class Cat implements Animal{
	public void cry(){
		System.out.println("Miao!Miao~~~");
	}
}

public class Test1 {
	public static void main(String args[]){
		Animal animal;
		animal = new Dog();
		animal.cry();
		animal = new Cat();
		animal.cry();
	}
}

 

个人觉得接口回调和上转型很像,下面是接口和抽象类的比较。

1、抽象类和接口都可以有抽象的方法。

2、接口中只可以有常量,不能有变量;而抽象类中既可以有常量,也可以有变量。且在接口中声明的方法是不可以带实现方法的。

3、抽象类中可以有非抽象的方法,接口不可以。就是说接口中的所有方法都必须在继承的子类中实现。

 

 

注:《Java大学实用教程》学习笔记

分享到:
评论

相关推荐

    微信支付-商户支付模式一url接口回调-java版

    微信支付-商户支付模式一url接口回调-java版,代码清晰,可直接运行

    java的接口回调示例代码

    比如说讯飞的语音识别,我们调用它的识别方法之后不是马上就可以得到识别的结果,需要经过一段时间(网络传输耗时),但是我们不会让程序傻逼地等待它的返回结果,而是让classA实现它定义的接口IntefaceC,当讯飞的...

    接口回调demo

    接口回调、反射

    java接口回调

    所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法

    Java中的接口回调

    接口回调是指:可以把使用某一个接口的类创建的对象的引用赋给该接口声明的接口变量中,那么该接口变量可以调用被类实现的接口中的方法。当接口变量调用被类实现的接口中的方法时,是通知相应的对象调用接口的方法,...

    java类和对象,上转型,接口回调

    第一部分 有一个抽象类ObjectVolume,如下所示: abstract class ObjectVolume ...(3)在main方法中,从键盘上输入电视、计算机和手机的销售个数,调用get方法可以分别得到商店关于上述商品的总销售额。

    java实现企业微信回调配置案例

    java实现--企业微信回调配置案例及工具代码

    java 回调函数 实现

    java 回调函数 自己模拟实现 使用了接口来完成

    Java利用接口实现回调

    在Java支持方法指针之前,Java接口不能提供一种实现回调的好方法。如果您习惯于传递在事件驱动编程模型中调用的函数指针,则您会喜欢本技巧。  熟悉MS-Windows和X Window System事件驱动编程模型的开发人员,习惯...

    Java编程接口回调一般用法代码解析

    本文的主要内容是同过实际代码向大家展示Java编程中接口回调的一般用法,具有一定参考价值,需要的朋友可以了解下

    android接口回调

    android接口回调 handler+thread

    Java接口回调一般用法

    Java接口回调一般用法:实现接口实际上和继承抽象类类似,只不过继承是在类的层面上操作,接口是在方法和常量集合的层面上操作,接口比抽象类更抽象、更简洁。可以把实现接口看成继承特定的一个或多个方法以及一些...

    Java简单的回调(interface)demo

    Java简单的回调demo,写了个java最简单的回调demo,便于学习!最复杂的东西都是由简单来的,欢迎下载!

    java 接口回调实例详解

    主要介绍了java 接口回调实例详解的相关资料,所谓回调就是使用java中的多态,需要的朋友可以参考下

    Java中的接口回调实例

    今天小编就为大家分享一篇关于Java中的接口回调实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    java 转型运算符的资源

    java 转型运算符 java 转型运算符 java 转型运算符 java 转型运算符

    JNI层中创建的线程中回调java方法代码

    JNI层中创建的线程中回调java方法代码

    微信企业号回调模式实例(Java版)

    微信企业号回调模式实例(Java版) 认真阅读word文档,按照步骤实行,琢磨了一个礼拜,只收一分。

    Java回调机制

    Java最简单的接口回调,更详细的同步回调和异步回调见相关博客。

Global site tag (gtag.js) - Google Analytics