Definisi: Perilaku kelas atau algoritma dapat diubah saat runtime. Dalam mode kebijakan, kami membuat objek yang mewakili berbagai kebijakan dan objek konteks yang perilakunya berubah ketika objek kebijakan berubah. Objek kebijakan mengubah algoritma eksekusi dari objek konteks.
Fitur:
1. Algoritma dapat dialihkan dengan bebas.
2. Hindari menggunakan beberapa kondisi untuk menilai.
3. Skalabilitas yang baik.
Aplikasi dalam pengembangan tingkat perusahaan dan kerangka kerja umum: java.servlet.http.httpservlet Metode
Contoh: Perilaku operasi pada dua angka.
Demo kelas publik {public static void main (string [] args) {strategi strategi1 = new strategyAdd (); Strategi strategi2 = strategi baru (); Konteks konteks1 = konteks baru (strategi1); Context1.Execute (10, 5); konteks1 = konteks baru (strategi2); Context1.Execute (10, 5); }} Strategi Antarmuka {public void dooperation (int num1, int num2);} class strategyAdd mengimplementasikan strategi {public void dooperation (int num1, int num2) {System.out.println ("Execute Addition"); System.out.println (num1+"+"+num2+"="+(num1+num2)); }} class strategysub mengimplementasikan strategi {public void dooperation (int num1, int num2) {System.out.println ("Execute Subtraction"); System.out.println (num1+"-"+num2+"="+(num1-num2)); }} class StrategyMul mengimplementasikan strategi {public void dooperation (int num1, int num2) {System.out.println ("Execute Multiplication"); System.out.println (num1+"*"+num2+"="+(num1*num2)); }} class StrategyDiv mengimplementasikan strategi {public void dooperation (int num1, int num2) {System.out.println ("Execute Division"); System.out.println (num1+"/"+num2+"="+(num1/num2)); }} Konteks kelas {strategi strategi privat; konteks publik (strategi strategi) {this.strategy = strategi; } public void mengeksekusi (int num1, int num2) {strategi.dooperation (num1, num2); }}Model kebijakan menekankan perubahan runtime. Mungkin dalam kode di atas, perubahan runtime ini tidak tercermin dengan baik. Kita dapat mengasumsikan skenario praktis, yaitu, ketika parameter objek diteruskan ke dalam metode, anggaplah kita harus memilih metode yang berbeda sesuai dengan parameter yang berbeda, kita akan mempertimbangkan jika-else untuk menilai, sementara model kebijakan mengklasifikasikan jika-Else ini, masing-masing menilai kelas, dan kemudian objek datang dan secara langsung memanggil metode antarmuka kebijakan. Kelas spesifik dari parameter objek milik dinilai oleh JVM. Kami tidak perlu memahami jenis atribut parameter objek, dll. Ini tidak hanya menyederhanakan pekerjaan pengembangan kami, tetapi juga memiliki skalabilitas yang lebih baik dibandingkan dengan IF-ELSE.
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.