類的繼承
子類及其定義
子類的定義使用關(guān)鍵字extends
格式:
class SubClass extends SuperClass{ ........ }
子類可以繼承父類的屬性和方法;子類不能繼承帶private修飾符的屬性,方法;子類不能繼承構(gòu)造方法
更多相關(guān)視頻教程推薦:java在線學(xué)習(xí)
單繼承:
Java只支持單繼承,即只能從一個類繼承,extends關(guān)鍵字后面的類名只能一個。
優(yōu)點(diǎn):可以避免多個父類之間可能發(fā)生的沖突。
interface接口機(jī)制,允許一個類實現(xiàn)多個接口
super關(guān)鍵字
super關(guān)鍵字指向該關(guān)鍵字所在類的父類,父類引用變量可以指向子類對象
格式:
super.someNethod([paramlist])//調(diào)用父類中的someMethod()方法
子類對象的創(chuàng)建
步驟:
分配對象所需的全部內(nèi)存空間,并初始化為0值
按繼承關(guān)系,自頂向下顯式初始化
按繼承關(guān)系,自頂向下調(diào)用構(gòu)造方法
子類對象初始化的另一種表述:
基本初始化,執(zhí)行構(gòu)造方法,先執(zhí)行父類構(gòu)造方法,執(zhí)行父類構(gòu)造方法之前,要執(zhí)行父類顯式初始化語句。
方法的重寫
(1)子類中重寫方法的返回值類型必須與父類中被重寫方法的返回值類型相同
(2)子類中重寫方法的訪問權(quán)限不能縮小
(3)子類重寫不能拋出新的異常:方法的重寫是實現(xiàn)對象運(yùn)行時多態(tài)的基礎(chǔ)
多態(tài): 編譯時多態(tài)和運(yùn)行時多態(tài)
編譯時多態(tài):比如重載
運(yùn)行時多態(tài):比如重寫
上溯造型
將一種類型對象的引用轉(zhuǎn)換成另一種類型對象引用
向下造型(強(qiáng)制類型轉(zhuǎn)換)
instanceof
運(yùn)算符
aOblectVariable instanceof SomeClass
aOblectVariable
是 SomeClass
類型時,該表達(dá)式的值為true,否則為false
格式
(SomeClass)aObjectVariable
(1)對象變量轉(zhuǎn)換的目標(biāo)類型,一定要是當(dāng)前對象類型的子類
(2)在運(yùn)行時刻也要進(jìn)行對象類型檢查
Object類
java中的每個類都是Object類的直接或間接子類。
equals類:比較兩個對象的值
重寫equals()方法目的:定義對象的值
Java規(guī)定:兩個值相等的對象hashCode()返回值要相等,所以重寫equals()方法,同時也要重寫hashCode()方法,“==”比較兩個對象的地址。? ? ? ? ? ?
toString()方法
返回對象的字符串表示。
getClass()方法
返回對象的類信息,該方法返回一個Class類型的對象。
相關(guān)文章教程推薦:java入門程序
Atas ialah kandungan terperinci 一篇文章帶你詳細(xì)理解java中類的繼承與多態(tài). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Untuk mengendalikan transaksi JDBC dengan betul, anda mesti terlebih dahulu mematikan mod komit automatik, kemudian melakukan pelbagai operasi, dan akhirnya melakukan atau mengembalikan semula hasilnya; 1. Panggil Conn.SetAutOcommit (palsu) untuk memulakan transaksi; 2. Melaksanakan pelbagai operasi SQL, seperti memasukkan dan mengemaskini; 3. Panggil Conn.Commit () jika semua operasi berjaya, dan hubungi conn.rollback () jika pengecualian berlaku untuk memastikan konsistensi data; Pada masa yang sama, cuba-dengan-sumber harus digunakan untuk menguruskan sumber, mengendalikan pengecualian dengan betul dan menutup sambungan untuk mengelakkan kebocoran sambungan; Di samping itu, adalah disyorkan untuk menggunakan kolam sambungan dan menetapkan mata simpan untuk mencapai rollback separa, dan menyimpan urus niaga sesingkat mungkin untuk meningkatkan prestasi.

Gunakan kelas dalam pakej Java.Time untuk menggantikan kelas lama dan kelas kalendar; 2. Dapatkan tarikh dan masa semasa melalui LocalDate, LocalDateTime dan Tempatan Tempatan; 3. Buat tarikh dan masa tertentu menggunakan kaedah (); 4. Gunakan kaedah tambah/tolak untuk meningkatkan dan mengurangkan masa; 5. Gunakan zoneddatetime dan zonid untuk memproses zon waktu; 6. Format dan parse date string melalui DateTimeFormatter; 7. Gunakan segera untuk bersesuaian dengan jenis tarikh lama apabila perlu; pemprosesan tarikh di java moden harus memberi keutamaan untuk menggunakan java.timeapi, yang memberikan jelas, tidak berubah dan linear

Pra-formancetartuptimemoryusage, quarkusandmicronautleadduetocompile-timeprocessingandgraalvsupport, withquarkusoftenperforminglightbetterine serverless scenarios.tyvelopecosyste,

HTTP Log Middleware di GO boleh merakam kaedah permintaan, laluan, IP klien dan memakan masa. 1. Gunakan http.handlerfunc untuk membungkus pemproses, 2. Rekod waktu mula dan masa akhir sebelum dan selepas memanggil next.servehttp, 3. Dapatkan IP pelanggan sebenar melalui r.remoteaddr dan X-forward-for headers, 4. Gunakan log.printf untuk mengeluarkan log permintaan, 5. Kod sampel lengkap telah disahkan untuk dijalankan dan sesuai untuk memulakan projek kecil dan sederhana. Cadangan lanjutan termasuk menangkap kod status, menyokong log JSON dan meminta penjejakan ID.

Koleksi Sampah Java (GC) adalah mekanisme yang secara automatik menguruskan ingatan, yang mengurangkan risiko kebocoran ingatan dengan menuntut semula objek yang tidak dapat dicapai. 1.GC menghakimi kebolehcapaian objek dari objek akar (seperti pembolehubah stack, benang aktif, medan statik, dan lain -lain), dan objek yang tidak dapat dicapai ditandakan sebagai sampah. 2. Berdasarkan algoritma penandaan tanda, tandakan semua objek yang dapat dicapai dan objek yang tidak ditandai. 3. Mengamalkan strategi pengumpulan generasi: Generasi Baru (Eden, S0, S1) sering melaksanakan MinorGC; Orang tua melakukan kurang tetapi mengambil masa lebih lama untuk melakukan MajorGC; Metaspace Stores Metadata kelas. 4. JVM menyediakan pelbagai peranti GC: SerialGC sesuai untuk aplikasi kecil; ParallelGC meningkatkan throughput; CMS mengurangkan

Memilih jenis htmlinput yang betul dapat meningkatkan ketepatan data, meningkatkan pengalaman pengguna, dan meningkatkan kebolehgunaan. 1. Pilih jenis input yang sepadan mengikut jenis data, seperti teks, e -mel, tel, nombor dan tarikh, yang secara automatik boleh menyemak dan menyesuaikan diri dengan papan kekunci; 2. Gunakan HTML5 untuk menambah jenis baru seperti URL, Warna, Julat dan Carian, yang dapat memberikan kaedah interaksi yang lebih intuitif; 3. Gunakan pemegang tempat dan sifat -sifat yang diperlukan untuk meningkatkan kecekapan dan ketepatan pengisian bentuk, tetapi harus diperhatikan bahawa pemegang tempat tidak dapat menggantikan label.

GradleisthebetterChoiceFormostNewProjectSduetoitSsuperiorflexibility, Prestasi, danModernToolingSupport.1.Gradle'sGroovy/KOT lindslismoreconciseandexpressivethanmaven'sverbosexml.2.GradleOutPerformsMaveninBuildSpeedWithIncrementalcompilation, BuildCac

Defer digunakan untuk melaksanakan operasi tertentu sebelum fungsi pulangan, seperti sumber pembersihan; Parameter dinilai dengan serta-merta apabila menangguhkan, dan fungsi-fungsi dilaksanakan mengikut urutan terakhir (LIFO); 1. Pelbagai penahanan dilaksanakan dalam urutan terbalik pengisytiharan; 2. Biasanya digunakan untuk pembersihan yang selamat seperti penutupan fail; 3. Nilai pulangan yang dinamakan boleh diubah suai; 4. Ia akan dilaksanakan walaupun panik berlaku, sesuai untuk pemulihan; 5. Elakkan penyalahgunaan menangguhkan gelung untuk mengelakkan kebocoran sumber; Penggunaan yang betul boleh meningkatkan keselamatan kod dan kebolehbacaan.
