疑问:一段JIVE代码,对象之间到底能不能用“==”比较

03-08-22 xsxiaobao

// 在此输入java代码
public class ConnectionManager {

    private static DatabaseType databaseType = DatabaseType.OTHER;

    public static DatabaseType getDatabaseType() {
        return databaseType;
    }

    public static class DatabaseType {
        public static final DatabaseType ORACLE = new DatabaseType();
        public static final DatabaseType MYSQL = new DatabaseType();
        public static final DatabaseType OTHER = new DatabaseType();
        private DatabaseType() {
           /* do nothing */
        }
    }

}

//判断:
public class DbForumFactory extends ForumFactory
{
   private synchronized void loadPopularObjects(){
     if(ConnectionManager.getDatabaseType() == ConnectionManager.DatabaseType.ORACLE){//这里会返回true or false?
       /*dothing*/
     }
   }
}


<p>

这里ConnectionManager.getDatabaseType() == ConnectionManager.DatabaseType.ORACLE 到底会返回一个什么值呢?

我搜变整个JIVE代码,也没有发现什么地方需要改变ConnectionManager.databaseType值,那么这个判断的用意又是什么呢。。。

困惑。。

猜你喜欢