topical media & game development

talk show tell print

graphic-processing-site-examples-Basics-Objects-MultipleConstructors-MultipleConstructors.pde / pde



  
Multiple constructors A class can have multiple constructors that assign the fields in different ways. Sometimes it's beneficial to specify every aspect of an object's data by assigning parameters to the fields, but other times it might be appropriate to define only one or a few.

  
  
  Spot sp1, sp2;
  void setup() 
  {
    size(200, 200);
    background(204);
    smooth();
    noLoop();
    // Run the constructor without parameters
    sp1 = new Spot();
    // Run the constructor with three parameters
    sp2 = new Spot(122, 100, 40);
  }
  
  void draw() {
    sp1.display();
    sp2.display();
  }
  
  class Spot {
    float x, y, radius;
    // First version of the Spot constructor;
    // the fields are assigned default values
    Spot() {
      x = 66;
      y = 100;
      radius = 16;
    }
    // Second version of the Spot constructor;
    // the fields are assigned with parameters
    Spot(float xpos, float ypos, float r) {
      x = xpos;
      y = ypos;
      radius = r;
    }
    void display() {
      ellipse(x, y, radius*2, radius*2);
    }
  }
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.