sendo static, signfica que para acessa-la não exige que seja instanciada(o). Exemplo de métodos static e pode ser chamado de qualquer classe.
exemplo:
public class ConnectionFactory {
public static Connection getConnection()throws SQLException{
try{
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection("jdbc:mysql://localhost/test","root","");
}catch(ClassNotFoundException e){
throw new SQLException(e.getMessage());
}
}
}
veja que o método é static
vamos vê-lo em ação nesta classe abaixo:
public class ContatoDAO {
private Connection connection;
public ContatoDAO() throws SQLException {
this.connection = ConnectionFactory.getConnection();
}
se não fosse static seria assim:
public class ContatoDAO {
private Connection connection;
ConnectionFactory factory = new ConnectionFactory();
public ContatoDAO() throws SQLException {
this.connection = factory.getConnection();
}
com isso toda classe que fize-se uso da ConnectionFactory, seria obrigatório instancia-la para poder utiliza-la.
Sendo o método getConnection() static da classe ConnectionFactory, isso não seria necessário, pois se tratando de método estático pode ser chamado diretamente no método construtor da classe que vai fazer uso da ConnectionFacrtory.
Isso não é um tutorial… mas dar para entender mais ou menos a questão proposta.
Abraços!