EC

  • Edwin Chan
  • CV
  • CPSC 233
  • CPSC 331
  • CPSC 355
  • CPSC 581
  • Origami
  • Random

Tutorial 6 (Feb 4): Classes continued, UML

Outline

We will go over the following concepts again from last class:

  • Class declaration
  • Constructors
  • Instance methods (sending messages to objects)
  • Instance variables
  • Creating objects using the new operator

In-class exercise

The GradeSimulator example last class may have been a little difficult to grasp at the beginning. We will work on a simpler example today called Banking, and I will leave GradeSimulator as an example for your reference.

Download Banking: Handout || Solution || Javadoc (there is no exercise code, we'll start from scratch in class)
Download GradeSimulator: Handout || Exercise || Solution || Javadoc

Other material for reference:

  • The supplement slides I made on Classes covers (Revised Feb 6):
    • Important! I made a mistake on the last slide using this() as a constructor. The correct way is "this(0, 0" and not "this.Point(0, 0)", sorry about that! (Thanks Lisa for catching that.)
    • main() function
    • constructors
    • class vs instance
      • instance methods
      • instance variables
      • class methods
      • class variables
      • access control
      • this keyword
  • Refer to Tutorial 5 (Feb 2) for how to generate Javadoc
  • The examples involving DateTime in Chapter 4 of your textbook.
  • This simple game I made, still undocumented.
  • UML diagram basics by Beck Hasti @ WISC

The Math class

For Assignment 2, you may need to use the following methods from the Math class:

Math.pow(double baseNumber, double exponent)
double someNumber = 5;
double someNumberSquared = Math.pow(someNumber, 2); //25

Math.sqrt(double numberToSqrt)
double anotherNumber = 25;
double sqrtOfAnotherNumber = Math.sqrt(anotherNumer); //5

  • Edwin Chan
  • CV
  • CPSC 233
  • CPSC 331
  • CPSC 355
  • CPSC 581
  • Origami
  • Random