线程-java中下面这段代码是一个匿名对象传入一个匿名对象在调用start方法吗

问题描述

java中下面这段代码是一个匿名对象传入一个匿名对象在调用start方法吗

new Thread(new Runnable() {.....省略代码若干..........}).start();

上面这段代码是一个匿名对象传入一个匿名对象在调用start方法吗

还是一个匿名类传入一个匿名对象再调用start方法

我有点分不清匿名对象和匿名类呢

解决方案

 new Runnable() {.....省略代码若干..........}
 匿名类,因为Runnable是接口,需要实现类

 new Thread
 匿名对象,Thread本身就是类,没有匿名
 所以是匿名对象嵌套匿名类

解决方案二:

 可以这么理解,匿名对象就是直接new的一个对象而没有用某个变量接收,参数是创建了一个匿名类实现Runnable接口,并创建一个这个匿名类的对象作为Thread类构造参数。匿名类是类,是为了不单独创建一个类而临时实现的,好处就是用完就扔,不会创建类文件。
时间: 2025-01-05 16:29:06

线程-java中下面这段代码是一个匿名对象传入一个匿名对象在调用start方法吗的相关文章

java中下面这段代码怎么理解?

问题描述 java中下面这段代码怎么理解? class Connection { private static int count = 0; private int i = 0; private Connection() { System.out.println("Connection()");} // Allow creation via static method: static Connection makeConnection() { count++; return new C

java ee中的一段代码:

问题描述 java ee中的一段代码: for (Teacher teacher : teachers) { teacher.setEditable(false); 解决方案 foreach就是一种特殊for循环,foreach自动遍历每一个元素,无法根据索引指定某个特定元素.格式是for(元素类型 元素变量:遍历对象){--},例如: String[] hobbys = {"read","sing","dance"}; for(String h

java i o流 文本框-JAVA中初始化问题,代码在中的变量不能被初始化

问题描述 JAVA中初始化问题,代码在中的变量不能被初始化 我创建了一个按钮,给按钮一个鼠标监听器.按下按钮会获得一个文本区的字符串给masage,当我在其他包中调用getMasage方法,得到的字符串是123而不是文本区的字符串. import java.awt.Color;import java.awt.event.MouseEvent; import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JT

demos-关于百度地图项目中的BMPAPIDemeMain中的一段代码

问题描述 关于百度地图项目中的BMPAPIDemeMain中的一段代码 private static final DemoInfo[] demos = { new DemoInfo(**_R.string.title_activity_daohang, R.string.title_activity_locationkuaijiwuliu**_, DaohangActivity.class) 星号内的看不懂,我想改为加入中文字该怎么弄?

线程类中可以用静态代码块做初始化静态变量么?这些静态变量会不会有并发问题呢?

问题描述 线程类中可以用静态代码块做初始化静态变量么?这些静态变量会不会有并发问题呢? public class SalesConfirmationUploadThread extends Thread { private boolean result = false; private final SalesConfirmationPipedInputStream input; private long orderId; private String pin; private JingdongS

opencv中的一段代码,希望有人可以解释下

问题描述 opencv中的一段代码,希望有人可以解释下 5C 还非得输入长度30-10000的问题描述.....................................................opencv中的一段代码,希望有人可以解释下.就是从垂直投影开始的代码处 没有看懂,好几个循环, 希望大牛可以帮忙解释下,刚接触OPENCV不久.难道代码没有 传上来 吗 解决方案 ```#include <cv.h>#include <cxcore.h>#include &l

请问vb.net中timer这段代码哪里错了

问题描述 请问vb.net中timer这段代码哪里错了 代码如下 If n = sn.Length Then Timer1.Enabled = False End If url = fr & sn(n) n = n + 1 MessageBox.Show(url) 我想当timer运行次数等于sn.Length,自动关闭timer,但是运行时,却不能关闭timer,请问是哪里错了,检查了好几遍都没看出来 我觉得这段代码很简单,先是if判断timer是否关闭,然后执行fr和数组的合并,n= n +

javame中的一段代码,求各位帮忙看看表示什么意思

问题描述 privateString[][]patternLibrary={{"Lblock","433434443533534543",},{"SkewLblock","333334343344433444",},{"OpposedLblock","254263264353354363",},{"Beehive","35334436435545344446

html-为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除?

问题描述 为什么在IE中运行这段代码会提示type为空或不是对象?为什么border属性会无法移除? <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>example</title> <style type="text/css"> p{ border: thin solid black; background: g