حالة من الدرجة روبي
وفيما يلي سوف إنشاء فئة روبي اسمه العملاء، يعلن طريقتين:
- display_details:يستخدم هذا الأسلوب لعرض معلومات مفصلة عن العملاء.
- total_no_of_customers:الطريقة المستخدمة لإنشاء عدد من العملاء في نظام العرض.
#!/usr/bin/ruby class Customer @@no_of_customers=0 def initialize(id, name, addr) @cust_id=id @cust_name=name @cust_addr=addr end def display_details() puts "Customer id #@cust_id" puts "Customer name #@cust_name" puts "Customer address #@cust_addr" end def total_no_of_customers() @@no_of_customers += 1 puts "Total number of customers: #@@no_of_customers" end end
يتكون طريقةdisplay_detailsمن ثلاثة بيان يضع، والتي تبين هوية العميل، اسم العميل وعنوان العميل. حيث، ويضع البيان:
puts "Customer id #@cust_id"
هوية العملاء عرض النص وقيمة المتغيراتcust_id على خط واحد.
عندما تريد عرض النص والمثال قيم المتغيرات في سطر واحد، تحتاج إلى وضع الرمز (#) أمام العبارة يضع اسم المتغير. يجب النص والمثال المتغيرات مع الرمز (#) استخدام علامات الاقتباس المزدوجة.
الطريقة الثانية، total_no_of_customers، يحتوي فئة متغيرno_of_customers. التعبيرالعملاء no_of_ + = 1 عند كل مكالمة total_no_of_customers طريقة، بالإضافة إلى no_of_customers متغير 1. وبهذه الطريقة، سوف تحصل متغيرات الطبقة العدد الإجمالي للعملاء.
الآن إنشاء اثنين من الزبائن، على النحو التالي:
cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya") cust2=Customer.new("2", "Poul", "New Empire road, Khandala")
هنا، ونحن خلق فئتين من الأشياء العملاء، cust1 وcust2، وتمرير المعلمات الضرورية أساليب جديدة. عندما يتم استدعاء الأسلوب تهيئة، يتم تهيئة سمات الضرورية للجسم.
مرة واحدة يتم إنشاء كائن، تحتاج إلى استخدام كائنين لاستدعاء أساليب الفئة. إذا كنت تريد أن تتذرع بأي طريقة أو بيانات الأعضاء، يمكنك كتابة التعليمات البرمجية كما يلي:
cust1.display_details() cust1.total_no_of_customers()
بعد ويتبع اسم الكائن دائما نقطة، يليه اسم الأسلوب أو عضو البيانات. لقد رأينا كيف الكائن cust1 للاتصال طريقتين. استخدام الكائن cust2، يمكنك أيضا الاتصال طريقتين، على النحو التالي:
cust2.display_details() cust2.total_no_of_customers()
حفظ وتنفيذ التعليمات البرمجية
الآن، كل شفرة المصدر على ملف main.rb، على النحو التالي:
#!/usr/bin/ruby class Customer @@no_of_customers=0 def initialize(id, name, addr) @cust_id=id @cust_name=name @cust_addr=addr end def display_details() puts "Customer id #@cust_id" puts "Customer name #@cust_name" puts "Customer address #@cust_addr" end def total_no_of_customers() @@no_of_customers += 1 puts "Total number of customers: #@@no_of_customers" end end # 创建对象 cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya") cust2=Customer.new("2", "Poul", "New Empire road, Khandala") # 调用方法 cust1.display_details() cust1.total_no_of_customers() cust2.display_details() cust2.total_no_of_customers()
ثم قم بتشغيل البرنامج على النحو التالي:
$ روبي main.rb
وهذا ينتج النتائج التالية:
Customer id 1 Customer name John Customer address Wisdom Apartments, Ludhiya Total number of customers: 1 Customer id 2 Customer name Poul Customer address New Empire road, Khandala Total number of customers: 2