Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >从静态时间回调调用实例方法

从静态时间回调调用实例方法
EN

Stack Overflow用户
提问于 2011-07-26 21:03:11
回答 1查看 4.1K关注 0票数 2

我在类中有一个计时器,当这个计时器触发时,我想调用这个类的实例方法。如何从静态计时器回调方法中访问此值?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private void ClassInstanceMethod()
{
}

public static void TimerFired(object source, ElapsedEventArgs e)
{
    // Want to call ClassInstanceMethod() here
}

private void startTimer()
{
    timer = new Timer();
    timer.Interval = 1000;
    timer.Elapsed += new ElapsedEventHandler(TimerFired);
    timer.AutoReset = false;
    timer.Enabled = true;
}

解决了

我有一种误解,认为TimerFired必须是静态的--但事实并非如此。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-26 21:13:25

源参数是Timer对象,ElapsedEventArgs对象不包含对类实例的任何引用。正如注释中所讨论的那样,您可以使TimerFired方法非静态(即实例),从那里可以安全地从类调用ClassInstanceMethod和其他实例方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6839635

复制
相关文章
Java回调函数代码实例?
回调函数callback,是指通过函数传递参数传递到其他代码,某一块可执行的代码引用。
用户9919783
2022/12/14
5450
(三)回调 ref 中调用次数问题
# 🍇一、回调形式的 ref 的调用次数 class Demo { showInfo = () => { let {input} = this alert(input.value) } render() { return ( <div> <input ref={(currentNode) => this.input = currentNode; console.log('@',
老怪兽
2023/02/22
7100
(三)回调 ref 中调用次数问题
JS调用栈/回调队列/事件循环
单线程容易遇到一个问题:阻塞 解决办法:异步回调 解决原理:调用栈把会阻塞的函数丢到Web APIs里,Web APIs再把它丢到回调队列里, 通过事件循环——看着调用栈空了,就把回调队列里的函数丢回调用栈里让它执行
杨肆月
2019/08/20
4K0
JS调用栈/回调队列/事件循环
静态方法只能通过类名进行调用_java非静态方法可以调用静态方法吗
1、new xx().静态(); //使用对象调用,不推荐 2、xx.静态(); //类名调用,正规调用方法,推荐
全栈程序员站长
2022/11/17
1.2K0
【C#】回调方法不通过object参数获得委托实例
回调方法中几乎都会存在获取委托实例的需求,进而通过委托实例调用EndInvoke以得到异步执行的返回值。在我看过的相关文章中,获取委托实例的方法几乎都是同一个,就是向BeginInvoke的最后一个参数(object型)传入委托实例,然后在回调方法中通过ar.AsyncState得到,甚至在《C#高级编程》一书中,还特地讲到最后这个object参数最适合传入委托实例本身,以便回调方法中获取到它。直到看了张子阳的《.Net之美》一书后(似有广告之嫌,但事实如此,我也就不避讳了),新学到一招,不需要传参,直接就能从ar得到委托实例。如下:
AhDung
2018/09/13
6230
回调
回调简单而言:在一个类(A)的方法(a)中调用另一个类(B)的方法(b),当方法(b)执行完之后就调用类(A)中的方法(c),这就是回调的过程,是不是很简单?简单分析可以知道一个类(A)持有另一个类(B)的引用,方法(c)就叫做回调函数,画成UML图就如下所示:
晚上没宵夜
2020/03/10
2.6K0
静态方法(类方法)与非静态方法(成员方法/实例方法)
(访问变量区别)非静态方法可以访问类中的任何成员(静态与非静态//方法与变量); 但静态方法只能访问静态成员(包括方法和变量)。 (被调用区别)非静态方法必须由实例对象来调用,而静态方法除了可由实例对象调用外,还可以由类名直接调用。 (super,this)非静态方法中可以使用super、this关键字,但在静态方法中不能使用super、this关键字。
用户9854323
2022/06/25
2.2K0
PHP回调函数与匿名函数实例详解
回调函数、闭包在JS中并不陌生,JS使用它可以完成事件机制,进行许多复杂的操作。PHP中却不常使用,今天来说一说PHP中中的回调函数和匿名函数。
用户8449980
2021/07/13
9960
PHP回调函数与匿名函数实例详解
本文实例讲述了PHP回调函数与匿名函数。分享给大家供大家参考,具体如下: 回调函数和匿名函数 回调函数、闭包在JS中并不陌生,JS使用它可以完成事件机制,进行许多复杂的操作。PHP中却不常使用,今天来说一说PHP中中的回调函数和匿名函数。 回调函数 回调函数:Callback (即call then back 被主函数调用运算后会返回主函数),是指通过函数参数传递到其它代码的,某一块可执行代码的引用。 通俗的解释就是把函数作为参数传入进另一个函数中使用;PHP中有许多 “需求参数为函数” 的函数,像array_map,usort,call_user_func_array之类,他们执行传入的函数,然后直接将结果返回主函数。好处是函数作为值使用起来方便,而且代码简洁,可读性强。 匿名函数 匿名函数,顾名思义,是没有一个确定函数名的函数,PHP将匿名函数和闭包视作相同的概念(匿名函数在PHP中也叫作闭包函数)。它的用法,当然只能被当作变量来使用了。 PHP中将一个函数赋值给一个变量的方式有四种: ① 我们经常会用到的:函数在外部定义/或PHP内置,直接将函数名作为字符串参数传入。注意:如果是类静态函数的话以CLASS::FUNC_NAME的方式/【php教程_linux常用命令_网络运维技术】/传入。 ② 使用create_function($args, $func_code);创建函数,会返回一个函数名。 $func_code为代码体,$args为参数字符串,以','分隔; ③ 直接赋值:$func_name = function($arg){statement} ④ 直接使用匿名函数,在参数处直接定义函数,不赋给具体的变量值; 第一种方式因为是平常所用,不再多提;第二种类似eval()方法的用法,也被PHP官方列为不推荐使用的方式,而且其定义方式太不直观,我除了测试外,也没有在其他地方使用过,也略过不提。在这里重点说一下第三种和第四种用法; 后两种创建的函数就被称为匿名函数,也就是闭包函数, 第三种赋值法方式创建的函数非常灵活,可以通过变量引用。可以用 is_callable($func_name) 来测试此函数是否可以被调用, 也可以通过$func_name($var)来直接调用;而第四种方式创建的函数比较类似于JS中的回调函数,不需要变量赋值,直接使用; 另外要特别介绍的是 use 关键词,它可以在定义函数时,用来引用父作用域中的变量;用法为 function($arg) use($outside_arg) {function_statement} 。其中$outside_arg 为父作用域中的变量,可以在function_statement使用。 这种用法用在回调函数“参数值数量确定”的函数中。 如usort需求$callback的参数值为两项,可是我们需要引入别的参数来影响排序怎么办呢?使用use()关键词就很方便地把一个新的变量引入$callback内部使用了。 array_map/array_filter/array_walk: 把这三个函数放在一块是因为这三个函数在执行逻辑上比较类似,类似于下面的代码:
用户2323866
2021/06/30
1.2K0
Python|实例方法,类方法,静态方法
周五的时候修改了一点代码(确定不是bug),对Python 部分语法知识都生疏了,重新学习类中的方法。本章主要介绍python 类中的三种方法:实例方法,类方法,静态方法。
用户1278550
2019/07/30
2.8K0
类方法,静态方法和实例方法
2.类名的规范是: 1 数字字母下划线组成 2 不能以数字开头 3 首字母大写,驼峰命名 (例如:TestResult)
清菡
2020/12/02
2.8K0
类方法,静态方法和实例方法
关于类、方法、对象(实例):实例方法和静态方法
(1)实例方法只能被实例对象调用,第一个参数必须要默认传实例对象,一般习惯用self;
冰霜
2022/03/15
8010
关于类、方法、对象(实例):实例方法和静态方法
类方法和实例方法同名,实例调用
class People(object): country = 'china' def __init__(self,name): self.country = name def getCountry(self): # -- 实例方法 return self.country #类方法,用classmethod来进行修饰 @classmethod def getCountry(cls): # -
汪凡
2018/05/29
2K0
​29 - 回调函数和回调地狱
原文地址:https://dev.to/bhagatparwinder/callback-functions-callback-hell-79n
前端黑板报
2022/12/01
4.6K0
什么是回调地狱?如何解决回调地狱问题_地狱回调
这个问题呢,需要从Node.js的API说起,这里就会有人问了?博主你不是说回调地狱的问题吗,怎么说到API了,别急,看博主一步一步的解释给你听:
全栈程序员站长
2022/11/15
3.2K0
JavaScript异步调用操作可增加finally回调
JavaScript异步调用操作(如远程服务、本地任务)的API一般只提供的执行成功(success)和执行失败(fail)的回调,其实还可以提供一个无论执行成功还是失败最终都会执行的回调(finally),使得一些扫尾工作不用在成功和失败的回调代码中都重复写一遍,流程更加清晰规整。
LeoXu
2018/08/15
5400
MessageHandler 高级用法二:原生调用JS 实现回调
在 上一篇中 我们实现了原生和JS 的方法调用,这篇解决一下在 APP 中调用JS方法时怎么含有 JS 的回调
onety码生
2018/11/21
4.1K0
Java中静态方法不能调用非静态方法的原因
如图,是Java中静态代码和实例对象互相调用的规则,我们接下来就讲讲为什么在Java中静态方法不可以调用非静态代码呢。
浩Coding
2019/07/03
5.6K5
七、回调
修改PspNotifyEnableMask为00000009,创建和退出进程时就不会触发回调
zhang_derek
2022/09/29
1.6K0
关于回调
爱学习的前端歌谣
2023/10/18
1760
关于回调

相似问题

静态方法调用的回调

10

回调非静态方法

619

从静态方法调用实例方法

121

从实例方法中静态空洞的Cordova回调

14

从回调内部调用原型方法

35
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文