小编che*_*hta的帖子

枚举和枚举之间的区别

enum数据类型和Enumeration接口之间是否有任何区别.我在两者之间感到困惑.

我得到了他的答案,他们没有关系,但这带来了另一个问题.

我们无法实例化接口.那么这条线的意义何在?

Enumeration days = dayNames.elements();
Run Code Online (Sandbox Code Playgroud)

下面是包含该行的完整代码

import java.util.Vector;
import java.util.Enumeration;

public class EnumerationTester {

   public static void main(String args[]) {
      Enumeration days;
      Vector dayNames = new Vector();
      dayNames.add("Sunday");
      dayNames.add("Monday");
      dayNames.add("Tuesday");
      dayNames.add("Wednesday");
      dayNames.add("Thursday");
      dayNames.add("Friday");
      dayNames.add("Saturday");
      days = dayNames.elements();
      while (days.hasMoreElements()){
         System.out.println(days.nextElement()); 
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

java oop enumeration interface

14
推荐指数
2
解决办法
2万
查看次数

赋值运算符String对象

我是JAVA编程的新手.我在书中看过

String a="Hello";
String b="Hello";
System.out.println(a==b);
Run Code Online (Sandbox Code Playgroud)

这应该返回false,因为a&b引用String对象的不同实例.

Bcoz赋值运算符比较对象的实例,但我仍然得到一个真实的.
我正在使用Eclipse IDE.

书中的例子如下:

String s = "s";
String sToo = "s";
System.out.println(a == b);
System.out.println(s == sToo);
Run Code Online (Sandbox Code Playgroud)

对于s == sToo,该位代码打印"false".那是因为s和sToo是对String对象的不同实例的引用.因此,即使它们具有相同的值,它们在相等运算符的眼中也是不相等的.此外,s =="s"打印为false,因为字符串文字产生String类的另一个实例.

书名:JAVA 7 for Absolute Beginners

java object assignment-operator comparison-operators

0
推荐指数
1
解决办法
3092
查看次数

预期多线程输出

我是Java和多线程概念的新手.这是我的实验代码:

public class Multithread implements Runnable {

    Thread t;

    public Multithread(int prior, String name) {
        this.t = new Thread(this, name);
        this.t.setPriority(prior);
        this.t.start();
    }

    public void run() {
        for (int i = 1; i <= 5; i++) {
            if (this.t.getName().equals("thread1")) {
                System.out.println("First Child Thread Loop No " + i);
            }
            else {
                System.out.println("Second Child Thread Loop No " + i);
            }

            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                System.out.println(e);
            }
        }
    }

    public static void main(String[] args) {
        new Multithread(10, …
Run Code Online (Sandbox Code Playgroud)

java oop multithreading

-2
推荐指数
1
解决办法
135
查看次数