Berikut ini adalah dari Wikipedia, penjelasan pemeriksaan jenis statis dan pemeriksaan tipe dinamis:
• Pemeriksaan Jenis Statis: Suatu proses memverifikasi keamanan jenis berdasarkan kode sumber program;
• Pemeriksaan Jenis Dinamis: Proses memverifikasi keamanan jenis selama proses berjalan;
Java menggunakan pemeriksaan tipe statis untuk menganalisis program selama kompilasi untuk memastikan tidak ada kesalahan jenis. Ide dasarnya adalah tidak membiarkan kesalahan jenis terjadi selama runtime.
Kode berikut adalah contoh, setelah memahaminya, Anda akan lebih memahami cara kerja pemeriksaan tipe statis Java.
Contoh Kode
Misalkan kita memiliki kelas berikut, A dan B, dan B mewarisi A.
class a {a me () {return this;} public void doA () {System.out.println ("do a");}} kelas B memperluas {public void dob () {system.out.println ("do b");}} Pertama, apa yang akan dipanggil ke B (). Saya () kembali? Objek A atau B?
Metode ME () dinyatakan mengembalikan objek A, jadi selama kompilasi, kompiler hanya tahu bahwa ia mengembalikan objek A. Namun, ia mengembalikan objek B selama runtime karena B mewarisi metode A dan mengembalikan dirinya sendiri.
Bagaimana cara kerja pemeriksaan jenis statis?
Baris kode berikut adalah ilegal, bahkan jika metode DOB () dipanggil oleh objek B. Masalahnya adalah jenis rujukannya adalah A. Saat menyusun perangkat, kompiler tidak tahu tipe sebenarnya, jadi dia memperlakukannya sebagai tipe A.
// ilegalnew b (). me (). dob ();
Jadi, hanya kode berikut yang dapat dipanggil:
// legalnew b (). me (). doa ();
Namun, kita dapat memberikan tipenya ke B, sebagai berikut:
// legal ((b) baru b (). me ()). dob ();
Selanjutnya, kami menambahkan kelas C:
Class C memperluas {public void dobad () {System.out.println ("do c");}} Kemudian, pernyataan kode berikut akan lulus pemeriksaan jenis statis:
// legal ((c) baru b (). me ()). bebad ();
Kompiler tidak tahu tipe sebenarnya, tetapi pengecualian akan dilemparkan selama runtime karena Tipe B tidak dapat dikonversi ke Tipe C;
Di atas adalah penjelasan terperinci dari contoh -contoh bagaimana pemeriksaan jenis statis dilakukan di Java yang diperkenalkan kepada Anda oleh editor. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!