语法

匿名内部类适合那种只需要使用一次的类。创建匿名类的同时会立即创建一个该类的实例,这个类不能重复使用。

new interface|superClass()

{

//匿名内部类

}

可见,匿名类必须继承一个父类或一个接口,且最多一个。

还要注意,匿名内部类不能定义静态初始化代码块,不能在匿名类里面定义接口,不能在匿名类中定义构造函数。

匿名类就是一个继承的子类,也可以多重匿名(多重子类)。

常用匿名类写法

注意辨析以下写法的结果为什么不同。

public class RunWhatThread {

public static void main(String[] args) {

Thread th = new Thread(new Runnable() {

@Override

public void run() {

System.out.println("runnable");

}

});

th.start();

}

}

//输出runnable

public class RunWhatThread {

public static void main(String[] args) {

Thread th = new Thread(new Runnable() {

@Override

public void run() {

System.out.println("runnable");

}

})

{

@Override

public void run() {

System.out.println("thread");

}

};

th.start();

}

}

//输出thread

public class RunWhatThread {

public static void main(String[] args) {

Thread th = new Thread(new Runnable() {

@Override

public void run() {

System.out.println("runnable");

}

}) {

@Override

public void run() {

super.run();

System.out.println("thread");

}

};

th.start();

}

}

//输出

runnable

thread

java thread 匿名_Java 匿名内部类相关推荐

  1. java thread join()_Java Thread join() 的用法

    Java Thread中, join() 方法是让调用该方法的主线程执行run()时暂时卡住,等run()执行完成后, 主线程再调用执行join()后面的代码.示例: class ThreadTest ...

  2. java thread join()_Java中Thread.join()的使用方法

    概要 本文分三个部分对thread.join()进行分析: 1. join() 的示例和作用 2. join() 源码分析 3. 对网上其他分析 join() 的文章提出疑问 1. join() 的示 ...

  3. java thread yield()_Java Thread yield()方法

    Java Thread yield()方法 java.lang.Thread.yield() 方法使当前执行的线程对象来暂停并允许其他线程执行. 1 语法 public static void yie ...

  4. java内部类写法_Java匿名内部类的写法示例

    前言 在Java中调用某个方法时,如果该方法的参数是一个接口类型,除了可以传入一个参数接口实现类,还可以使用匿名内部类实现接口来作为该方法的参数. 匿名内部类其实就是没有名称的内部类,在调用包含有接口 ...

  5. java thread类_java多线程之Thread类

    Class Thread java.lang.Object java.lang.Thread 实现接口:Runnable 直接被继承的子类:ForkJoinWorkerThread public cl ...

  6. java thread 多线程_java用Thread方式创建多线程

    进程:一个正在执行的程序,每一个进程都有一个执行顺序,该 顺序是一个执行路径,或者叫一个控制单元. 线程:进程中一个独立的控制单元.线程控制着进程的执行. 一个进程中至少有一个线程. java VM中 ...

  7. java thread应用_JAVA线程应用Thread

    java线程学习: 基本概念: 当一个程序开启的时候,会启动一个进程,在进程中会开启线程,如果只有一个线程,这个线程就称为主线程.如果进程停止,会先杀死线程再退出! java线程类:Thread 方法 ...

  8. java thread类_Java多线程原理及Thread类详解

    多线程原理 代码如下: 自定义线程类: 测试类: 流程图: 程序启动运行main时候,java虚拟机启动一个进程,主线程main在main()调用时候被创建.随着调用mt的对象的start方法,另外一 ...

  9. java thread 线程_Java Thread类简述

    今天我们来看下java.lang.Thread这个类. 在学习Thread类之前,先看下线程相关知识:线程的几种状态.上下文切换,然后介绍Thread类中的方法的具体使用. 1.线程的状态 线程从创建 ...

最新文章

  1. 测试RDA5807收音机模块
  2. nyoj 1261 音痴又音痴的LT(离散化+树状数组求K小数)
  3. 2018-06-25-Python全栈开发day21-part2-time模块介绍
  4. step4 . day4 库函数和库函数的制作
  5. java栅格法全局路径规划,基于A*的全局路径规划算法(1)
  6. Tokenizers: How machines read
  7. 机器学习 Machine Learning中向量化矩阵化的技巧
  8. 基于SSM的校园订餐管理系统
  9. 园林计算机制图在计算机上的应用,园林计算机制图
  10. MATLAB 数学应用 微分方程 常微分方程 求解捕食者-猎物方程
  11. 2021如何提升网站的排名?SEO
  12. 台式计算机usb接口无反应6,教你电脑usb接口不能用的解决方法
  13. smbrun - smbd和外部程序间的接口程序。
  14. 直流电源EMI滤波器的设计
  15. SpringBoot (八)日志配置
  16. [转]人生就像一张茶几,摆满了各种杯具洗具餐具
  17. Python绘制3D立体花
  18. python爬虫猫眼电影票房_python爬取猫眼电影top100排行榜
  19. 云服务器和vps二者的区别
  20. Suzy找到实习了吗Day 17 | 二叉树进行中:110. 平衡二叉树,257 二叉树的所有路径,404. 左叶子之和

热门文章

  1. ultraedit编译java_在UltraEdit中编译和运行Java程序
  2. vant toast loading 倒计时_法考倒计时3天 | 民法典新旧对照表(四)合同部分(一)...
  3. win10如何设置定时关机?
  4. 踏上自媒体之路,分享必备技能心得
  5. OmniGraffle-绘制流程图
  6. 解决JCE cannot authenticate the provider BC
  7. 电子作业票系统:消除安全管理漏洞,科技赋能企业业务洞察
  8. 如何将你的Linux服务器清空?
  9. 俄罗斯方块【六种模式】【c语言】【史上最强】
  10. 机器学习与深度学习:微积分知识汇总