xyz5359502 2015-01-20 14:11 采纳率: 0%
浏览 1632

新人刚到CSDN,请教请教各位大大一些java问题。

class Demo extends Thread{
private String name;
Demo(String name) {
this.name = name;
}
public void run() {
for(int i = 0; i <= 20; i++) {
for(int j = -99999; j <= 99999; j ++){}
System.out.println(name+Thread.currentThread().getName());
}
}
}
class test5 {
public static void main(String[] args) {
//Thread t = new Thread();
Demo d1 = new Demo("CSDN222222");
Demo d2 = new Demo("CSDN111111");
d1.start();
System.out.println("哈哈"+Thread.currentThread().getName());
d2.start();
}
}
1,为什么可以在main()函数中,直接调用“Thread.currentThread().getName()”这个方法呢。我知道currentThread()这个方法是静态的,但是getName()不是静态的啊。难道直接(类名.静态方法.非静态方法)可以实现?
2,为什么Thread类可以直接用呢?
谢谢各位大大。新手问题没水准,多包涵。

  • 写回答

1条回答 默认 最新

  • threenewbee 2015-01-21 07:56
    关注

    currentThread()是静态方法没错,但是它返回了一个对象实例,这个对象实例可以调用成员方法,好比:
    class A
    {
    static public A GetInstanceOfA() { return new A(); }
    public void foo();
    }
    你就可以写
    A.GetInstabceOfA().foo();

    评论

报告相同问题?

悬赏问题

  • ¥15 C语言设计一个简单的自动换档程序
  • ¥15 关于logstash转发日志时发生的部分内容丢失问题
  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。