import java.sql.*;
public class DataBase {
  public Connection conn;
  public Statement stmt;
  public ResultSet rs=null;
  public String sqlStr="";  public DataBase() {
    this.connect();//构造函数中调用connect方法  !1
  }
 public boolean connect(){
      try{
        Class.forName("org.gjt.mm.mysql.Driver").newInstance();
        String url ="jdbc:mysql://localhost/BookStore?user=wxy&useUnicode=true&characterEncoding=8859_1";
        conn=DriverManager.getConnection(url);
        stmt = conn.createStatement ();
       }catch(Exception ee){
        System.out.println("connect db error:"+ee.getMessage());
        return false;
       }
      return true;
    }
 public static void main(String[] args) {
     try{
            DataBase db = new DataBase();//!2
            db.connect();//!3
          }catch(Exception e){
            e.printStackTrace();
          }
        }
}在database的构造函数中有调用connect方法,而在构造对象后又一次调用connect方法。上面标记的三个步骤是否有重复呢。这样对吗?请高手帮忙解释。