Anda seharusnya tidak menelepon parse setelah melihat callSomething()
(saya kira Anda maksudkan callSomething
daripada doSomething
). Perbedaan antara a
dan callSomething
adalah bahwa yang satu adalah definisi metode sedangkan yang lainnya adalah pemanggilan metode.
Saat Anda melihat definisi baru, Anda ingin melakukan pemeriksaan terkait untuk memastikan Anda dapat menambahkan definisi itu, jadi:
- Periksa apakah fungsi belum ada dengan tanda tangan yang sama
- Pastikan bahwa deklarasi metode sedang dilakukan dalam cakupan yang tepat (yaitu, apakah metode dapat dideklarasikan di dalam deklarasi metode lain?)
Dengan asumsi lulus pemeriksaan ini, Anda dapat menambahkannya ke peta Anda dan mulai memeriksa konten metode itu.
Ketika Anda menemukan panggilan metode seperti callSomething()
, Anda harus melakukan pemeriksaan berikut:
- Apakah
callSomething
ada di peta Anda?
- Apakah itu disebut dengan benar (jumlah argumen cocok dengan tanda tangan yang Anda temukan)?
- Apakah argumen valid (jika nama variabel digunakan, apakah dideklarasikan? Dapatkah diakses pada lingkup ini?)?
- Dapatkah callSomething dipanggil dari tempat Anda berada (apakah privat, publik, terlindungi?)?
Jika Anda menemukan itu callSomething()
baik-baik saja, maka pada titik ini apa yang ingin Anda lakukan benar-benar tergantung pada bagaimana Anda ingin mendekatinya. Sebenarnya, setelah Anda tahu bahwa panggilan seperti itu tidak masalah pada saat ini, Anda hanya bisa menyimpan nama metode dan argumen tanpa masuk ke perincian lebih lanjut. Ketika Anda menjalankan program Anda, Anda akan memanggil metode dengan argumen yang harus Anda miliki saat runtime.
Jika Anda ingin melangkah lebih jauh, Anda dapat menyimpan tidak hanya string tetapi tautan ke metode aktual. Ini akan lebih efisien, tetapi jika Anda harus mengelola memori, ini bisa membingungkan. Saya akan merekomendasikan Anda hanya memegang string pada awalnya. Nanti Anda bisa mencoba mengoptimalkan.
Perhatikan bahwa ini semua dengan anggapan bahwa Anda telah lexxed program Anda, yang berarti Anda telah mengenali semua token dalam program Anda dan tahu apa itu . Itu bukan untuk mengatakan Anda tahu apakah mereka masuk akal bersama, yang merupakan fase parsing. Jika Anda belum tahu apa token itu, saya sarankan Anda fokus dulu untuk mendapatkan informasi itu terlebih dahulu.
Saya harap itu membantu! Selamat Datang di Programmer SE!