JavaRush /Blog Jawa /Random-JV /Pitakonan lan Jawaban: Apa bisa nemtokake metode abstrak ...

Pitakonan lan Jawaban: Apa bisa nemtokake metode abstrak ing kelas pungkasan?

Diterbitake ing grup
Pitakonan sing menarik lan penting iki dijaluk marang salah sawijining pembaca nalika wawancara telpon kanggo posisi pangembang Jawa. Sanajan dheweke ngerti yen ora bisa nggawe kelas abstrak finaling basa Jawa , dheweke bingung karo tembung pitakon kasebut. Jawaban iki prasaja: ora, finalora ana cara abstrak ing a -class. Kenging punapa? Amarga sanalika sampeyan ngumumake metode abstrak ing kelas basa Jawa, kelas iki kanthi otomatis dadi abstrak, lan finalsampeyan ora bisa nggawe kelas abstrak ing basa Jawa. finalIki tegese ora ana cara abstrak ing kelas Jawa.
Pitakonan lan Jawaban: Apa bisa nemtokake metode abstrak ing kelas pungkasan?  - 1
Akeh pangembang Jawa sing bingung njawab pitakonan iki amarga tembung-tembunge. Malah yen wong takon pitakonan wis menowo karo konsep umum, dheweke bisa uga ora éling sing kelas, sawise wara-wara cara abstrak ing, dadi abstrak, lan sampeyan ora bisa nggawe kelas abstrak finaling Jawa. Titik iki misahake pitakonan iki saka pitakonan sing luwih umum lan asring ditakokake: apa bisa ing Jawa nyatakake kelas dadi abstrak lan final ing wektu sing padha? Ayo kang katon ing siji conto kode kanggo nduduhake iku finalora bisa kanggo wara-wara cara abstrak ing -class. Ayo Hello.javakita duwe public finalkelas sing diarani Hello, sing nduweni metode abstrak print().
public final class Hello {
  public abstract void print();
}
Ketik kode iki menyang IDE, sampeyan bakal nampa pesen kesalahan ing ngisor iki, padha ngandika Helloiku kudu kelas abstrak supaya cara abstrak bisa ngumumaké ing.
Pitakonan lan Jawaban: Apa bisa nemtokake cara abstrak ing kelas pungkasan?  - 2
Pitakonan lan Jawaban: Apa bisa nemtokake metode abstrak ing kelas pungkasan?  - 3
Bab sing padha bakal kedadeyan yen sampeyan ngetik kode iki ing Notepad lan ngumpulake nggunakake utilitas javac saka baris printah. Miturut spesifikasi Jawa, sanalika sampeyan ngumumake metode abstrak ing kelas, kelas kasebut dadi kelas abstrak, lan amarga sampeyan ora bisa nggawe kelas abstrak finaling Jawa, kompiler bakal ngasilake kesalahan. Iki bener kanggo kelas tingkat ndhuwur lan kelas nested ing basa Jawa. Sanajan sampeyan ngumumake metode abstrak ing finalkelas nested, kesalahane bakal padha. Pitakonan liyane sing gegandhengan yaiku: bisa kelas abstrak ing Jawa duwe metode statis? Jawaban: ya, padha bisa, ora ana masalah karo deklarasi cara statis ing kelas abstrak, wiwit nggunakake cara statis sampeyan ora perlu kanggo nggawe Kayata saka kelas, padha bisa disebut mung nggunakake jeneng kelas. Kita bisa ngowahi conto kanggo nyakup Hellometode ing kelas main(), sing statis ing Jawa, kaya sing kapacak ing ngisor iki:
public abstract class Hello {
  public abstract void print();
  public static void main(String args[]) {
     // Howой-то code
  }
}
Kaya sing sampeyan ngerteni, ora ana kesalahan kompilasi sing dibuwang. Kode iki kompilasi tanpa masalah, amarga ing Jawa sampeyan bisa kanthi aman ngumumake cara statis ing kelas abstrak. kesimpulan Brief Iku mokal kanggo wara-wara cara abstrak ing final-class. Amarga yen sampeyan nindakake iki, kelas kanthi otomatis dadi abstrak, miturut spesifikasi Jawa. Lan wiwit finala -class ing Jawa ora bisa abstrak, iki ora bisa ditampa, lan compiler bakal nglarang sampeyan nindakake iki kanthi mbuwang kesalahan. Nanging sampeyan bisa ngumumake cara statis ing kelas final lan abstrak, ora ana masalah.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION