Java中的函数传递
转载自 Java中的函数传递
在C和C++中,函数的传递可以通过函数指针来实现。在C#中,函数传递可以通过委托、Action、Func来实现。Java中没有函数指针、没有委托,那函数要如何传递呢?
可以通过以下两种方式实现。
1、通过handler,在A类中实例化B类,并传递一个handler到B中。B通过handler发送消息,A中接收到消息后,执行相应的函数。严格的来说,这种不算是函数传递,只是变相达到了函数调用的目的。
2、通过接口来实现。下面是实现的代码。
ICallback.java
package com.sparkle.sgmjl;public interface ICallback {abstract void callback(String data);
}
在A类中传递ICallback给B类,代码如下。
ClassA.java
ClassA classA=new ClassA( new ICallback() {@Overridepublic void callback(String data) {Test(data);}}); private void Test(String data)
{Log.e("TEST",data))
}
ClassB.java
public ClassB(ICallback icallback){icallback("Call OK"); }
Java中的函数传递相关推荐
- 为什么说 Java 中只有值传递?
对于初学者来说,要想把这个问题回答正确,是比较难的.在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的是,我也没有在网上找到哪篇文章可以把这个事情讲解的通俗易懂. ...
- java只有值传递_面试官:为什么 Java 中只有值传递?
1.为什么 Java 中只有值传递? 首先回顾一下在程序设计语言中有关将参数传递给方法(或函数)的一些专业术语.按值调用(call by value)表示方法接收的是调用者提供的值,而按引用调用(ca ...
- 为什么说Java中只有值传递(另一种角度)
转载自 为什么说Java中只有值传递 对于初学者来说,要想把这个问题回答正确,是比较难的.在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的是,我也没有在网上找到 ...
- 一文彻底搞懂Java中的值传递和引用传递!
关于Java中方法间的参数传递到底是怎样的.为什么很多人说Java只有值传递等问题,一直困惑着很多人,甚至我在面试的时候问过很多有丰富经验的开发者,他们也很难解释的很清楚. 我很久也写过一篇文章,我当 ...
- java引用传递_理解Java中的引用传递和值传递
关于Java传参时是引用传递还是值传递,是一个讨论比较多的话题, 有说Java中只有值传递,也有些地方说引用传递和值传递都存在,本篇记录思考过程,不保证正确性, 感兴趣的同学一起讨论. 1.基本类型和 ...
- 为什么Java中只有值传递
原文链接:https://www.cnblogs.com/wchxj/p/8729503.html 在开始深入讲解之前,有必要纠正一下大家以前的那些错误看法了.如果你有以下想法,那么你有必要好好阅读本 ...
- java只有值传递_为什么说java中只有值传递
前言 这几天在整理java基础知识方面的内容,对于值传递还不是特别理解,于是查阅了一些资料和网上相关博客,自己进行了归纳总结,最后将其整理成了一篇博客. 值传递 值传递是指在调用函数时将实际参数复制一 ...
- 请注意,java中没有引用传递
今天在论坛上有人提了一个关于java中调用函数时有没有引用传递的问题,可谓是吵的不可开交.有人说java只有值传递,也有人说java既有值传递也有引用传递,那么java中到底有没有引用传递呢,下面我来 ...
- 什么是值传递,什么是引用传递。为什么说Java中只有值传递。
关于这个问题,在StackOverflow上也引发过广泛的讨论,看来很多程序员对于这个问题的理解都不尽相同,甚至很多人理解的是错误的.还有的人可能知道Java中的参数传递是值传递,但是说不出来为什么. ...
最新文章
- 为TypeScript项目生成API文档
- pdfparser java_如何使用java从PDF中提取内容?
- MyBatis(1):MyBatis入门
- zabbix NFS挂载 监控模板
- js的异步请求出现同步效果
- 【ArcGIS风暴】ArcGIS获取一个省各个地区界内的河流的总长度--以甘肃省为例
- 2021金蝶全球创见者大会成功举办, 500强企业共话EBC数字战斗力
- hdu2243考研路茫茫——单词情结
- 走在WCF学习的路上---印在脑子里的点点滴滴(两种元数据交换方式的优缺点)...
- 后台审批功能 销售发货单 生成 销售出库单 java NC633 接口开发
- Android学习手册:JSON解析工具比较
- HowTo 激活非常规方式安装的正版OEM Vista
- html autoplay属性,HTML autoplay属性用法及代码示例
- 小雷的冰茶几(并查集)
- oracle逗号隔开行转列_oralce逗号分割变多行-Oracle
- ffplay工具命令使用技巧浅析
- 2018最新云知梦Laravel5.4电商实战项目VIP实战
- 【Beta阶段】第九次Scrum Meeting
- html页面实现打印功能
- php上传头像的代码,针对多用户实现头像上传功能PHP代码 适用于登陆页面制作...
热门文章
- jsbridge实现及原理_JSBridge 实现原理解析
- 电脑打字手指正确姿势_写字坐姿不正确的难题,已被家长攻克,果然高手在民间...
- matlab如何使用cu文件,Matlab编译cuda的.cu文件
- Deeplab unexpected label
- 2019-ACM-ICPC-南京区网络赛-E. K Sum(莫比乌斯反演 + 杜教筛)
- Codeforces Round #716 (Div. 2)
- 1153 Decode Registration Card of PAT (25分)
- 牛客网【每日一题】4月21日题目精讲 糖糖别胡说,我真的不是签到题目
- [USACO19JAN,Platinum]Train Tracking 2
- LOJ:黑暗城堡(最短路)