Pengantar Kelas Tanggal dan Waktu Java
Kelas tanggal dan waktu Java terletak di paket java.util. Dengan menggunakan metode yang disediakan oleh kelas tanggal dan waktu, Anda bisa mendapatkan tanggal dan waktu saat ini, membuat parameter tanggal dan waktu, menghitung dan membandingkan waktu.
Kelas Tanggal
Kelas tanggal adalah kelas tanggal dan waktu di Java, dan memiliki banyak metode konstruksi.
Date (): Inisialisasi objek menggunakan tanggal dan waktu saat ini.
Tanggal (Long Millisec): Hitung waktu dalam milidetik mulai dari 00:00 pada 1 Januari 1970 (waktu Greenwich), dan hitung milidetik milidetik. Jika zona waktu setempat di mana program Java berjalan adalah zona waktu Beijing (8 jam terpisah dari waktu Greenwich), tanggal dt1 = tanggal baru (1000); maka objek DT1 adalah 08:00:01 pada 1 Januari 1970.
Silakan lihat contoh menampilkan tanggal dan waktu:
impor demo kelas publik {public static void main (string args []) {date da = new date (); long msec = da.getTime ();
Hasil Menjalankan:
MON 05 FEB 22:50:05 CST 2007 dari 0:00 pada 1 Januari 1970 hingga sekarang: 1170687005390 milidetik
Beberapa metode kelas tanggal yang umum digunakan:
Pesanan default objek tanggal untuk mewakili waktu adalah minggu, bulan, hari, jam, menit, kedua, tahun. Jika Anda perlu memodifikasi format tampilan waktu, Anda dapat menggunakan metode "Sederhana (Pola String)".
Misalnya, waktu output dalam format yang berbeda:
Impor java.util.date; impor java.text.simpledateFormat; demo kelas publik {public static void main (string args []) {date da = new date (); new SimplateFormat ("Yyyyy tahun mm DD Day E Beijing Time"); ss detik "); System.out.println (ma2.format (-1000));}} Hasil Menjalankan:
Sun Januari 04 17:31:36 CST 2015 04 Januari 2015 Beijing Time Beijing Waktu: 01 Januari 1970 07: 59: 59: 59: 59: 59: 59:
Kelas Kalender
Kalender kelas abstrak menyediakan serangkaian metode yang memungkinkan waktu dalam milidetik untuk dikonversi menjadi komponen waktu yang bermanfaat. Kalender tidak dapat membuat objek secara langsung, tetapi Anda dapat menggunakan metode statis getInstance () untuk mendapatkan objek kalender yang mewakili tanggal saat ini, seperti:
Kalender kalender = calendar.getInstance ();
Objek ini dapat memanggil metode berikut untuk mengubah kalender ke waktu yang ditentukan:
void set (tahun int, bulan int, tanggal int); void set (tahun int, bulan int, tanggal int, int jam, int menit); void set (tahun int, bulan int, tanggal int, int jam, dalam t menit , int kedua);
Untuk menghubungi informasi tentang tahun, bulan, jam, minggu, dll., Anda dapat melakukannya dengan menghubungi metode berikut:
int get (bidang int);
Di mana, nilai bidang parameter ditentukan oleh konstanta statis kelas kalender. Di antara mereka: tahun mewakili tahun, bulan mewakili bulan, jam mewakili jam, dan menit mewakili menit, seperti:
calendar.get (calendar.month);
Jika nilai pengembalian adalah 0, itu berarti kalender saat ini adalah Januari, jika pengembalian 1 mewakili Februari, dan seterusnya.
Beberapa metode umum yang ditentukan oleh kalender ditunjukkan pada tabel berikut:
Kelas Gregoriancalendar
Gregoriancalendar adalah kelas yang secara khusus mengimplementasikan kelas kalender, yang mengimplementasikan kalender Gregorian. Metode getInstance () dari kelas kalender mengembalikan Gregoriancalendar, yang diinisialisasi ke tanggal dan waktu saat ini di bawah wilayah default dan zona waktu.
Kelas Gregoriancalendar mendefinisikan dua bidang: AD dan BC, masing-masing mewakili BC dan pasca-AD. Konstruktor default GregorianCalendar () menginisialisasi objek dengan tanggal dan waktu saat ini dari wilayah default dan zona waktu.
Gregoriancalendar (Lokal Lokal); Gregoriancalendar (TimeZone TimeZone); Gregoriancalendar (TimeZone TimeZone, Locale Locale);
Kelas Gregoriancalendar menyediakan implementasi semua metode abstrak di kelas kalender, dan juga menyediakan beberapa metode tambahan, di antaranya metode yang digunakan untuk menilai tahun lompatan adalah:
Boolean Isleapyear (tahun int);
Jika tahun adalah tahun kabisat, metode ini mengembalikan true, jika tidak salah.
Kelas Objek Java
Kelas objek terletak di paket java.lang dan merupakan leluhur dari semua kelas Java, dan setiap kelas di Java diperpanjang darinya.
Jika kelas induk tidak ditampilkan saat mendefinisikan kelas Java, kelas objek diwarisi secara default. Misalnya:
Demo kelas publik {// ...} Ini sebenarnya adalah singkatan dari kode berikut:
Demo kelas publik memperluas objek {// ...}
Di Java, hanya tipe dasar yang bukan objek, seperti nilai numerik, karakter, dan nilai boolean bukan objek.
Kelas objek mendefinisikan beberapa metode yang berguna.
Metode Equals ()
Metode Equals () di kelas objek digunakan untuk mendeteksi apakah suatu objek setara dengan objek lain.
Public Boolean Equals (objek OBJ)
Misalnya:
obj1.Equals (obj2);
Di Java, makna dasar setara data berarti bahwa nilai dua data sama. Saat membandingkan Equals () dan "==", data tipe referensi membandingkan data tipe referensi, yaitu, alamat memori, dan tipe data dasar membandingkan nilai.
Melihat:
Metode Equals () hanya dapat membandingkan jenis referensi, dan "==" dapat membandingkan jenis referensi dan tipe dasar.
Saat membandingkan dengan metode Equals (), untuk file kelas, string, tanggal dan kelas pembungkus, jenis dan konten dibandingkan tanpa mempertimbangkan apakah referensi adalah instance yang sama.
Saat membandingkan dengan "==", tipe data di kedua sisi simbol harus sama (kecuali untuk tipe data yang dapat dikonversi secara otomatis), jika tidak akan ada kesalahan dalam kompilasi, dan dua data dibandingkan dengan yang setara Metode bisa selama mereka adalah tipe referensi.
metode hashcode ()
HashCode adalah nilai numerik yang diperoleh dari objek sesuai dengan algoritma tertentu, dan kode hash tidak teratur. Jika x dan y adalah objek yang berbeda, x.hashcode () dan y.hashcode () pada dasarnya tidak akan sama.
Metode hashcode () terutama digunakan untuk mengimplementasikan pencarian cepat dan operasi lain dalam koleksi, dan juga dapat digunakan untuk perbandingan objek.
Di Java, ketentuan kode hash adalah sebagai berikut:
Selama pelaksanaan aplikasi yang sama, ketika hashcode () dipanggil pada objek yang sama, hasil integer yang sama harus dikembalikan - asalkan informasi yang dibandingkan dengan setara () belum diubah. Adapun hasil panggilan yang diperoleh dengan aplikasi yang sama selama periode eksekusi yang berbeda, tidak perlu konsisten.
Jika dua objek diperlakukan sama dengan metode Equals (), memanggil HashCode () pada kedua objek harus mendapatkan hasil integer yang sama.
Jika dua objek diperlakukan tidak sama dengan metode Equals (), memanggil HashCode () pada kedua objek tidak harus menghasilkan hasil integer yang berbeda. Namun, pemrogram harus menyadari bahwa menghasilkan hasil integer yang berbeda untuk objek yang berbeda dapat meningkatkan efisiensi hashtable (kelas dalam kerangka kerja koleksi yang akan dipelajari nanti).
Sederhananya: Jika dua objek sama, nilai kode hash mereka harus sama; jika nilai kode hash dari kedua objek tersebut sama, mereka tidak harus sama. Dalam spesifikasi Java, umumnya ditetapkan bahwa metode Equals () harus ditimpa dengan metode hashcode ().
metode tostring ()
Metode ToString () adalah metode penting lain yang didefinisikan dalam kelas objek.
string publik tostring ()
Nilai pengembalian adalah tipe string, yang menjelaskan informasi tentang objek saat ini. Metode ToString () yang diimplementasikan di kelas objek adalah untuk mengembalikan informasi dan informasi alamat memori dari objek saat ini, tetapi ditulis ulang di beberapa subkelas (seperti string, tanggal, dll.), Dan juga dapat ditulis ulang di pengguna- Jenis yang ditentukan sesuai kebutuhan.
Selain secara eksplisit memanggil metode ToString () objek, metode ToString () akan dipanggil secara otomatis saat menghubungkan string dan jenis data lainnya.
Metode di atas sering digunakan di Java.