java-把方法当作参数传递
方法封装与多线程
在实际开发中,可能会遇到如下情况:
后端另起一个线程执行,先将结果返回给前端。
然后发现在项目中,很多地方都有这样的需求,比如excel导出,先查询后端数据再写入excel中返回给前端,这样会导致请求相对的缓慢,我们可以通过websocket,先将后端操作的通知给前端,后端另起线程执行excel导出的功能,导出完毕后,再通过websocket将结果通知给前端。
问题是很多地方都要这样写,只有导出的数据不一样,其他完全一样,我想我可以封装成一个公用方法,在公用方法上,将数据替换。
很不幸的是,获取数据量过多,这点我不得不放在线程中来查询,那么问题来了:如何在线程中替换查询结果?
就这个问题,我在网上找到了解决方法,以下是我总结的一些个人经验。
函数式接口
自定义一个接口,作用是此接口可以在参数中接收传递过来的方法
/*** @author lc*/
public interface MethodAction
java-把方法当作参数传递相关推荐
- java中将方法当作参数传递的方式
1. 使用consumer接口 在Java8中引入了一个函数式接口Consumer的对象,该对象可以把方法作为参数进行传递. 接口定义: @FunctionalInterface public int ...
- java中方法的参数传递机制
转载自 :https://www.cnblogs.com/lixiaolun/p/4311863.html 问:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果, ...
- java中方法的参数传递
java中方法的参数传递方式只有一种:值传递: 对于基本类型来说,传递的是实参的副本(值传递),故在方法内修改传递进来的值并不会影响实参本身: 对于引用类型来说,传递进来的是引用变量的副本(也是值传递 ...
- 两种参数类型_深入理解Java中方法的参数传递机制
形参和实参 我们知道,在Java中定义方法时,是可以定义参数的,比如: public static void main(String[] args){ } 这里的args就是一个字符串数组类型的参数. ...
- java中gettext方法_深入理解Java中方法的参数传递机制
形参和实参 我们知道,在Java中定义方法时,是可以定义参数的,比如: public static void main(String[] args){ } 这里的args就是一个字符串数组类型的参数. ...
- Java中方法调用参数传递的方式是传值,尽管传的是引用的值而不是对象的值。(Does Java pass by reference or pass by value?)
原文地址:http://www.javaworld.com/javaworld/javaqa/2000-05/03-qa-0526-pass.html 在Java中,所有的对象变量都是引用,Java通 ...
- java 中方法里的参数_【Java基础】12、java中方法的参数传递机制
无论是什么语言,要讨论参数传递方式,就得从内存模型说起,主要是我个人觉得从内存模型来说参数传递更为直观一些.闲言少叙,下面我们就通过内存模型的方式来讨论一下Java中的参数传递. 这里的内存模型涉及到 ...
- java 把方法当参数传递_java 中 如何将“一个类的方法 ”作为参数传到“另一个类的方法”中...
展开全部 在java中这是没有办法做到的,因e5a48de588b662616964757a686964616f31333337396336为java不是函数式编程语言,不过可以通过传递一个接口来实现 ...
- java面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
java面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 答:是值传递.Java编程语言只有值传递参数. 当一个对象实 ...
最新文章
- python 文件追加写入_Python写入文件–解释了打开,读取,追加和其他文件处理功能
- 【Flutter】Flutter 布局组件 ( PhysicalModel 组件 )
- 战神引擎修改服务器时间,修改战神引擎手游进入游戏公告内容教程
- python libusb1库
- 读《不要告诉我你懂margin(海玉的博客)》有感
- 如何看待潘石屹搞python_潘石屹考了99分的Python,到底是一种什么存在?
- 如何高效管理我的时间?——时间会给你最好的答案
- jsp标记之动作标记介绍
- hadoop单机环境搭建
- 单线程reactor
- 把AspDotNetCoreMvc程序运行在Docker上-part3:使用独立的存储容器
- 吉他音阶训练——问题解答
- 记一次阴阳师挂机脚本开发
- 系统安装无法创建新的系统分区的解决方法
- 关于cox单因素与多因素分析
- Google SEO 搜索中心
- 华为Nova8缺货怎么办?这款手机也不错
- CentOS curl命令详解
- Github与Git安装使用
- 单点登录 Ucenter 分析
热门文章
- 《华为路由器学习指南》终审目录首度曝光
- 未来智慧建筑的发展方向有哪些?
- (轉貼)《杜哈亞運》林智勝制勝!中華成棒再見安打射日奪金 (News)
- windows监视桌面_如何在Windows 10中添加和监视孩子的帐户
- 计算机网络之局域网(3)无线局域网
- React高阶组件深入理解
- linux将中文语言改成英文版,将Linux中文语言修改成英文的具体操作方法及报错解决...
- Python + SQL Sever+ VB 数据分析项目【爱彼迎 酒店预定取消率建议】
- kmeans学习笔记轮廓系数以及使用KMeans做矢量量化
- 牛客网剑指offer——Java题解