Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Có thể khai báo main() method là final trong Java không?


Có, chúng ta có thể khai báo main() method là final trong Java. Compiler không ném bất kỳ lỗi nào.

  • Nếu khai báo bất kỳ method nào là final bằng cách đặt từ khóa final thì method đó trở thành final method.
  • Chính mục đích của final method trong Java là chúng không bị overridden.
  • Chúng ta không thể override final methods trong subclass.
  • Nếu dùng inheritance và cần một số method không bị override trong subclass thì làm nó final để subclass không override được.
  • Chúng ta có thể truy cập final methods trong subclass nhưng không thể override final methods.

Ví dụ

class BaseClass { 
    public final void show(Object o) { 
        System.out.println("BaseClass method"); 
    } 
} 
class DerivedClass extends BaseClass { 
    public void show(Integer i) { 
        System.out.println("DerivedClass method"); 
    } 
} 
public class Test { 
    public static final void main(String[] args) { // declaring main () method with final keyword. 
        BaseClass b = new BaseClass(); 
        DerivedClass d = new DerivedClass(); 
        b.show(new Integer(0)); 
        d.show(new Integer(0)); 
    } 
}

Kết quả

BaseClass method DerivedClass method