background image

Java 代码:获取 java 线程中信息的两种方法

在进行多线程编程中,比较重要也是比较困难的一个操作就是如何获取线程中的信息。大
多数人会采取比较常见的一种方法就是将线程中要返回的结果存储在一个字段中,然后
再 提 供 一 个 获 取 方 法 将 这 个 字 段 的 内 容 返 回 给 该 方 法 的 调 用 者 。 如 以 下 的
ReturnThreadInfo 类:
 package threadtest1;
 /**
 *
 * @author shi mingxiang
 */
 public class ReturnThreadInfo extends Thread {
 private String str;
 public ReturnThreadInfo() {
 this.str = "Hello";
 }
 public void run(){
 this.str = "Hello World!";
 }
 public String getThreadInfo(){
 return this.str;
 }
 }
 
 大家可以看到该类是一个线程类并含有一个初始值为"Hello"的字段 str 以及一个可以
返回 str 值的方法:getThreadInfo(),而且当这个线程启动后 str 会被赋于新值:"Hello 
World!" 。 现 在 我 想 在 另 外 一 个 类 中 启 动 ReturnThreadInfo 线 程 , 并 通 过
getThreadInfo()方法获取值为"Hello World!"的变量并打印输出到控制台中。以下给出
一个实现该功能的 Main 类:
 package threadtest1;
 /**
 *
 * @author shi mingxiang
 */
 public class Main{
 public Main() {
 }
 /**
 * @param args the command line arguments
 */
 public static void main(String[] args) {