• 0

قراءة قيمة خاصية في صنف جافا واستعمال قيمته للتحقق من شرط OOP جافا

package Java;

public class Fan {
  final SLOW =1;
  final MEDIUM =2;
  final FAST =3;
  private int speed =1;
  private boolean on =false ;
  private double radius =5;
  String color blue;

  public Fan(){

  }

  public void setSpeed(int speed){
    this.speed = speed;
  }

  public void setOn(boolean on){
    this.on = on;
  }

  public void setRadius(double radius){
    this.radius = radius;
  }

  public void setColor(String color){
    this.color = color;
  }

  public int getSpeed(){
    return speed;
  }

  public boolean getOn(){
    return on;
  }

  public double getRadius(){
    return radius;
  }

  public String getColor(){
    return color;
  }

  public String toString(){

    //اذا كانت المروحة on
    if (.......)
      return "speed "+speed+"\n"+"color"+color+"\n"+"radius"+radius+"\n";
    //اذا كانت المروحة not on
    else {
      return "color"+color+"\n"+"radius"+radius+"\n";
    }
  }
}

كيف اكتب شرط 

onوnot onفي البرنامج؟

وهل هناك طريقة اخرى للحل؟

تمّ تعديل بواسطة Wael Aljamal
توضيح السؤال
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

نحن نستعمل الدالة toString في نفس الصنف، أي نفس class لذلك لاداعِ لاستعمال الmethod مثل get set ولكن الأفضل استعمالها مثل:

  public String toString(){

    //اذا كانت المروحة on
    if (getOn())
      return "speed "+speed+"\n"+"color"+color+"\n"+"radius"+radius+"\n";
    //اذا كانت المروحة not on
    else {
      return "color"+color+"\n"+"radius"+radius+"\n";
    }
  }

أي ماعلينا فعله هو استدعاء الدالة ()getOn في المكان الذي نريد فيه استدعاء المتغير، حيث بعد الاستدعاء سيتم تعويض قيمة المتغير on في هذا السطر لأن الدالة تعمل على return on أي سيتم فحص الشطر كما هو مطلوب

يمكن كتابة :

if ( on ) {
	..
}

مباشرة، حيث أن private متاحة ضمن نفس الصنف، إنما لايمكن الوصول لها من الغرض Object مباشرة.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية
  • 0

يمكنك استعمال قيمة on مباشرة لأنك داخل نفس الكلاس.

 public String toString(){

    //اذا كانت المروحة on
    if (on)
      return "speed "+speed+"\n"+"color"+color+"\n"+"radius"+radius+"\n";
    //اذا كانت المروحة not on
    else {
      return "color"+color+"\n"+"radius"+radius+"\n";
    }
  }

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
شارك على الشبكات الإجتماعية

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن