


Apakah perbezaan antara php dan java berorientasikan objek
Sep 17, 2021 pm 04:20 PMPerbezaan: 1. Kata kunci kelas dalam PHP tidak boleh mempunyai pengubah selain abstrak dan muktamad manakala Java boleh. 2. Nama kelas selepas kata kunci baharu dalam php boleh menjadi pembolehubah jenis rentetan, tetapi bukan dalam java. 3. Apabila mengakses objek induk, php menggunakan induk dan java menggunakan super.
Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP7.1&&java8, komputer DELL G3
PHP dan Java oriented Perbandingan tidak lengkap objek
PHP ialah bahasa yang ditaip lemah yang boleh diprogramkan dalam cara berorientasikan proses atau berorientasikan objek. Java ialah bahasa yang ditaip kuat, berorientasikan objek semata-mata. Kedua-dua bahasa ini mempunyai beberapa persamaan dalam aspek berorientasikan objek Dengan pengalaman pembelajaran Java, mudah untuk mempelajari PHP, hanya dengan melihat kata kunci ini (kelas, lanjutan, antara muka, pelaksanaan, akhir, awam, dilindungi, peribadi, statik. ) Terdapat perasaan yang sangat biasa.
Saya telah meringkaskan secara ringkas persamaan dan perbezaan dalam beberapa aspek Saya bukan ahli akademik, saya hanya mencari kepraktisan.
Perbandingan 1: Pengisytiharan kelas dan antara muka, pewarisan kelas, pengisytiharan pelaksanaan antara muka
Titik perbandingan | Titik yang sama | Titik yang berbeza | Pengisytiharan kelas | semuanya dibuat dengan kata kunci kelas, yang boleh diubah suai dengan abstrak dan muktamad Maksud kedua-dua pengubah ini adalah sama | kata kunci kelas php tidak boleh mempunyai pengubah selain kata kunci kelas yang abstrak dan muktamad boleh mempunyai fail A Java yang awam, dilindungi dan peribadi satu kelas awam||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pengisytiharan antara muka | Gunakan kata kunci antara muka | Sama seperti di atas | ||||||||||||||||||||||||
Warisan kelas | Gunakan kata kunci lanjutan, warisan tunggal | Tiada td> | ||||||||||||||||||||||||
Warisan antara muka | Gunakan kata kunci lanjutan | Tiada | ||||||||||||||||||||||||
Pelaksanaan antara muka | Gunakan kata kunci pelaksanaan untuk melaksanakan berbilang antara muka | Tiada | Penetapan kelas | Menggunakan kata kunci baharu mengembalikan rujukan kepada objek dan tugasan objek juga merupakan tugasan rujukan | Nama kelas selepas kata kunci baharu dalam PHP boleh menjadi pembolehubah jenis rentetan, tetapi bukan dalam Java | |||||||||||||||||||||
Akses objek induk |
|
php menggunakan kata kunci induk dan java menggunakan kata kunci super |
Perbandingan 2: Pengubah suai akses dan kaedah akses
比较点 | 相同点 | 不同点 |
---|---|---|
修饰符关键字 | 都是public、protected、private | 无 |
修饰符行为 | public: 类内部外部都可以访问,protected: 类内部和子类内部可以访问,private: 只有类内部才可以访问 | php的访问控制的要松一点 |
默认修饰符 | 无 | php默认是public,java默认是private |
实例成员和实例方法的访问方法 | 无 | php必须用$this->,java用this.,也可以省略 |
Perbandingan 3: Ahli kelas dan kaedah kelas
比较点 | 相同点 | 不同点 |
---|---|---|
关键字 | static | 无 |
作用域 | 该类的所有实例 | 无 |
访问方法 | 类名::变量或函数名称,不需实例化就能访问 | 无 |
Perbandingan 4: Pemalar kelas
比较点 | 相同点 | 不同点 |
---|---|---|
关键字 | const | java通常用final,php不能用final |
作用域 | 该类的所有实例 | 无 |
访问方法 | 类名::变量或函数名称,不需实例化就能访问 | 无 |
Perbandingan 5: Kaedah abstrak dan kelas abstrak
pada dasarnya adalah sama kaedah abstrak dan kelas abstrak kedua-duanya diubah suai dengan kata kunci abstrak dipanggil kelas abstrak. Kelas abstrak tidak boleh dijadikan instantiated.
Perbandingan 6: Menulis semula/menimpa/melebihi beban
Kaedah subkelas mempunyai tandatangan yang sama seperti kaedah kelas induk, yang dipanggil menulis semula/mengatasi pada masa ini , kaedah kelas induk Tidak kelihatan dalam subkelas. Oleh kerana Java ialah bahasa yang ditaip dengan kuat, ia mempunyai mekanisme beban berlebihan (nama kaedah yang sama, tandatangan berbeza, kaedah yang dipanggil berdasarkan jenis dan nombor parameter sebenar semasa membuat panggilan). PHP ditaip lemah dan tidak mempunyai lebihan beban sebaliknya, ia mempunyai lebihan beban untuk mencipta atribut dan kaedah kelas secara dinamik, yang dicapai melalui kaedah ajaib (__get, __set, __unset, __isset, __callStatic).
Pembelajaran yang disyorkan: latihan php
Atas ialah kandungan terperinci Apakah perbezaan antara php dan java berorientasikan objek. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel 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)

Topik panas

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP?

Cuti atau kembali dari Java 8 Stream Foreach?

Program PHP untuk mengira vokal dalam rentetan

Java Made Simple: Panduan Pemula untuk Kuasa Pengaturcaraan

Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak

Program Java untuk mencari kelantangan kapsul
