gpt4 book ai didi

java - 创建线程时,我们在构造函数中传递的参数包含(this)为什么要使用它?

转载 作者:行者123 更新时间:2023-11-30 05:30:30 29 4
gpt4 key购买 nike

我是编程新手。创建线程时,为什么我们要传递(this)作为参数?

private Thread filePuller = null;

filePuller = new Thread(this, "FilePuller");

最佳答案

这里发生的是,您显式实例化 Thread 类并将当前类的实例传递给新线程。详情见this Javadoc有关该构造函数的详细信息。您当前的对象是 Runnable interface 的实例(您应该能够通过检查类(class)开始的代码来检查这一点)。因此,稍后在代码中,当可能调用 filePuller.start() 时,它将调用当前类的 run() 方法。您应该能够在当前类中的某个位置看到 run() 方法的实现 - 无论是在同一文件中还是在父类(super class)的代码中。希望有帮助。

关于java - 创建线程时,我们在构造函数中传递的参数包含(this)为什么要使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57668678/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com