Singletonとstaticと聞いてちょっと質問です

class Test {
 private $con;
 private $hoge;
 public function Test($hoge) {
  $this->con = DB::get()->connect();
  $this->hoge = $hoge;
 }
 public function a() {
  $this->con->query("sql");
  //$this->hogeを使う
 }
 public static function b() {
  $con = DB::get()->connect();
  $con->query("sql");
 }
}

ポイントは
b()はインスタンス変数を必要としないのでstaticとしても呼び出せるようにしたい
$this->conが使えないのでstaticメソッドは毎回DB::get()->connect();をコールしないといけない

こういうのっておかしいですか?