【发布时间】:2013-05-23 05:13:23
【问题描述】:
好吧这里有一个静态实现,我不明白。我以前使用过静态但没有广泛使用,任何人都可以帮助我理解代码。这是代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Connection_Class {
String driver_ClassName="com.mysql.jdbc.Driver";
String URL_connection="jdbc:mysql://localhost:3306/vendor";
String user="root";
String password="lifesuckzz";
//can anybody explain what the following line means, especially the static part.......
private static Connection_Class connectionclass=null;
private Connection_Class(){
try{
Class.forName(driver_ClassName);
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
public Connection getConnection() throws SQLException{
Connection con=null;
con=DriverManager.getConnection(URL_connection,user,password);
return con;
}
public static Connection_Class getInstance(){
if(connectionclass==null){
//I know its returning an instance here
connectionclass=new Connection_Class();
}
return connectionclass;
}
}
【问题讨论】:
-
参见 docs.oracle.com/javase/tutorial/java/javaOO/classvars.html - 如果您不明白
static的含义,我强烈建议您在进行任何数据库工作之前了解更多关于核心 Java 语言功能的信息。 -
使用静态实例来保存类实例的唯一原因是静态方法
getInstance可以访问它......我相信下面的所有答案都会告诉你为什么这个单例不会作为单身人士工作.... -
@Thihara:明白了....这正是我对概念产生怀疑的地方...
-
@Why-K-Rum:这不是被冒犯的问题。这是在你能走路之前尝试跑步的问题 - 我认为在开始做数据库工作之前尝试理解语言的核心很重要。
-
你会在浪费时间——你自己的和其他人的。老实说,如果你以合理的顺序学习东西,你会发现你能更快地达到最终目标。试图走捷径只会给你带来麻烦。我已经看过很多次了。
标签: java methods static static-methods