在下面的方法中创建的对象在哪里?

时间:2018-12-21 13:03:49

标签: java object instantiation

我知道在Java中一切都必须围绕对象展开。但是在下面的代码中-

Connection con = DriverManager.getConnection(url, userName, password);
statement = con.createStatement();
result = statement.executeQuery(query);

在哪里创建对象?我似乎在这里看不到新关键字。我在这里错过了什么?

public String sqlQuery(String userN, String server, String database, String query) {

    try {
        String userName = "" + userN + "";
        String password = "Password1";
        String url = "jdbc:sqlserver://" + server + "" + ";databaseName=" + database + "";
        Connection con = DriverManager.getConnection(url, userName, password);
        Statement statement;
        statement = con.createStatement();
        result = statement.executeQuery(query);
    } 
    catch (Exception e) {
        e.printStackTrace();
    }
    return userN;
}

4 个答案:

答案 0 :(得分:3)

  

在哪里创建对象?

它们是在以下方法中创建的:

DriverManager.getConnection(url, userName, password);

con.createStatement();

statement.executeQuery(query);

及其参考资料将退还给您。

在这些方法或它们调用的其他方法中,应该一直在寻找new方法。

答案 1 :(得分:2)

getConnectioncreateStatementexecuteQuery创建分别实现ConnectionStatementResultSet的类的新实例,并返回它们

答案 2 :(得分:2)

con正在getConnection内创建

statementcreateStatement

result中的executeQuery

之前是否已经拥有这些对象都没关系,在分配它们时您将获得新的对象

答案 3 :(得分:2)

对象是在类Compare with Index的静态方法getConnection中创建的,然后此方法将引用返回给创建的{{1 }}。