2013-10-03 6 views
-2

Пожалуйста, проверьте код
почему конструктор абстрактного класса вызова первого
почему конструктор абстрактного класса вызова первого

abstract class car 
{ 
    car()   //creating a constructor for abstact class 
    { 
     System.out.println("four"); 
     } 
abstract String getText(); 
} 

добавления подкласса

public class abc extends car 
{ 

String getText()  //override the getText Method 
    { 
     return "Hello from JSP!"; 
     } 

статический блок

static 
{ 
    System.out.println("Hello"); 
} 

// пустой Блоку

{ 
    System.out.println("two"); 
} 

конструктор аЬс

abc() 
{ 
    super(); 
    System.out.println("three"); 
} 

// Основной метод

public static void main(String []args) 
{ 
    abc a = new abc(); 
    System.out.println("one"); 
} 
} 

спасибо

+2

Хорошая практика программирования. Первая буква имени класса должна быть в * Caps *. – SudoRahul

ответ

1

конструктор суперкласса всегда вызывается первым перед конструктором подкласса. В этом нет никаких проблем, и это стандартное поведение. Также обратите внимание на то, что для абстрактного класса вполне допустимо иметь конструктор.

Смежные вопросы