Почему выдается B более менее-понятно. Вы вызываете A::checkVar() как статический метод класса A. Соответственно, он вызывается в контексте объекта B, а $this ссылается на текущий контекст. Когда вы вызываете стаитческий метод класса, то объект не создается, соответственно, никакого $this у него нет.
www.php.net/manual/en/language.oop5.basic.php#language.oop5.basic.class.this
Если нужно получить A, то нужно сделать $a = new A(); $a->checkVar();