Saat digunakan seperti ini:
import static com.showboy.Myclass;
public class Anotherclass{}
apa perbedaan antara import static com.showboy.Myclass
dan import com.showboy.Myclass
?
sumber
Saat digunakan seperti ini:
import static com.showboy.Myclass;
public class Anotherclass{}
apa perbedaan antara import static com.showboy.Myclass
dan import com.showboy.Myclass
?
Lihat Dokumentasi
Deklarasi impor statis analog dengan deklarasi impor normal. Di mana deklarasi impor normal mengimpor kelas dari paket, yang memungkinkan mereka untuk digunakan tanpa kualifikasi paket, deklarasi impor statis mengimpor anggota statis dari kelas, yang memungkinkan mereka untuk digunakan tanpa kualifikasi kelas.
Jadi kapan Anda harus menggunakan impor statis? Sangat hemat! Hanya gunakan saat Anda tergoda untuk mendeklarasikan salinan konstanta lokal, atau menyalahgunakan warisan (Constant Interface Antipattern). Dengan kata lain, gunakan ketika Anda membutuhkan akses sering ke anggota statis dari satu atau dua kelas. Jika Anda terlalu sering menggunakan fitur impor statis, itu dapat membuat program Anda tidak dapat dibaca dan tidak dapat dipelihara, mencemari namespace-nya dengan semua anggota statis yang Anda impor. Pembaca kode Anda (termasuk Anda, beberapa bulan setelah Anda menulisnya) tidak akan tahu dari mana kelas anggota statis. Mengimpor semua anggota statis dari kelas dapat sangat berbahaya untuk dibaca; jika Anda hanya perlu satu atau dua anggota, impor mereka secara individual. Digunakan dengan tepat, impor statis dapat membuat program Anda lebih mudah dibaca,
include
di Ruby!Tidak ada perbedaan antara kedua impor yang Anda sebutkan. Anda dapat, bagaimanapun, menggunakan impor statis untuk memungkinkan akses wajar tanpa pengecualian ke anggota statis kelas lain. Di mana saya dulu harus melakukan ini:
Aku bisa melakukan ini:
Anda dapat melihat lebih banyak di dokumentasi .
sumber
Impor statis digunakan untuk mengimpor bidang / metode statis suatu kelas alih-alih:
Kamu bisa menulis :
Ini berguna jika Anda sering menggunakan konstanta dari kelas lain dalam kode Anda dan jika impor statis tidak ambigu.
Btw, dalam contoh Anda "import static org.example.Myclass;" tidak akan berfungsi: impor untuk kelas, impor statis untuk anggota kelas statis.
sumber
Ide dasar impor statis adalah bahwa setiap kali Anda menggunakan kelas statis, variabel statis atau enum, Anda dapat mengimpornya dan menyelamatkan diri dari pengetikan.
Saya akan menguraikan poin saya dengan contoh.
Kode yang sama, dengan impor statis:
Catatan : impor statis dapat membuat kode Anda membingungkan untuk dibaca.
sumber
import static java.lang.Math
tanpa tanda bintang?Yang pertama harus menghasilkan kesalahan kompilator karena impor statis hanya berfungsi untuk mengimpor bidang atau tipe anggota. (dengan asumsi MyClass bukan kelas dalam atau anggota dari showboy)
Saya pikir Anda maksud
yang membuat semua bidang statis dan anggota dari MyClass tersedia di unit kompilasi yang sebenarnya tanpa harus memenuhi syarat mereka ... seperti yang dijelaskan di atas
sumber
Itu
import
memungkinkan programmer java untuk mengakses kelas suatu paket tanpa kualifikasi paket.The
static import
fitur memungkinkan untuk mengakses anggota statis kelas tanpa kualifikasi kelas.The
import
menyediakan akses ke kelas dan antarmuka sedangkanstatic import
menyediakan akses ke anggota statis kelas.Contoh:
Dengan impor
Dengan impor statis
Lihat juga: Apa impor statis di Java 5
sumber
Katakanlah Anda memiliki bidang dan metode statis di dalam kelas yang disebut
MyClass
di dalam paket yang disebutmyPackage
dan Anda ingin mengaksesnya secara langsung dengan mengetikmyStaticField
ataumyStaticMethod
tanpa mengetik setiap kaliMyClass.myStaticField
atauMyClass.myStaticMethod
.Catatan: Anda perlu melakukan
import myPackage.MyClass
ataumyPackage.*
untuk mengakses sumber daya lainnyasumber
The
static
pengubah setelahimport
adalah untuk mengambil / menggunakan medan statis kelas. Satu area yang saya gunakanimport static
adalah untuk mengambil konstanta dari sebuah kelas. Kami juga dapat menerapkanimport static
metode statis. Pastikan untuk mengetikimport static
karenastatic import
salah.Apa yang ada
static import
di Jawa - JavaRevisited - Sumber yang sangat bagus untuk mengetahui lebih banyak tentangimport static
.sumber