1 / 17

Lec 12 Writing an Instantiable Class

Lec 12 Writing an Instantiable Class. Agenda. Review objects and classes Making our own class to create objects Our first "Instantiable" class with it's own Javadoc! Constructor method Parameter passing into methods Returning values from methods.

odeda
Download Presentation

Lec 12 Writing an Instantiable Class

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lec 12 Writing an Instantiable Class

  2. Agenda • Review objects and classes • Making our own class to create objects • Our first "Instantiable" class • with it's own Javadoc! • Constructor method • Parameter passing into methods • Returning values from methods

  3. We have been learning how to represent data in Java • Primitives • int, char, double, boolean • only hold simple pieces of data • a temperature, a choice, how many layers of lettuce • Objects (of existing Instantiable Classes) • Island, Particle, GolfAnimator, String, Scanner • more complicated "things" • data and methods (actions) combined • Class as a blueprint that lets us make many "instances"

  4. Remember: 3 Different Kinds of Classes • Application Class – what we've been doing • Has public static void main ( String [] args) • all of our programs to this point • Classes with only static utility methods • like Math class, NumericalStuff, StringUtil, Coins • to invoke a method: • nameOfClass.method(parameters); • double flip = Math.random(); // picks a random number // and stores in flip • Coins.dispenseQuarter(); // prints a quarter on console

  5. Instantiable Class 3. Instantiable Class – used to make objects from • String, Scanner, Point, Island, GolfAnimator, Particle • to invoke a method • nameOfObject.method(parameters); • Island desert = new Island(5); // desert is name of new Island • desert.moveNorth(); // move N on Island desert • Island hawaii = new Island(1000); // hawaii is new Island • hawaii.moveEast(); // move E on Island hawaii

  6. Review: Classes and Objects

  7. Object (reference) variables

  8. How to represent a Balloon in Java? • Data to define it: size color • Methods to modify it: can make a new Balloon can inflate it can get the size, color can change the color can pop it! size Color.YELLOW

  9. Structure of an Instantiable Class Class Name Instance Varbls Methods Constructor methodsame name as class

  10. Balloon Demonstration • We will now create our own Balloon class • If you want you can just download these into new class files and run • Balloon Class • BalloonApp Class • We will also learn the following • parameter passing into a method • returning a value • creating our own JavaDoc for our balloon class • Also, here is the Particle class from our previous labs

  11. Using a class -- objects • A class is a blueprint for making objects • When you declare a variable of your new class it’s called an object reference variable: Balloon hotAir; hotAir = new Balloon(5,Color.RED); Balloon bal=new Balloon(2,Color.BLUE);Balloon weather= new Balloon(200,Color.WHITE); hotAir weather bal

  12. You can use the public methods defined for the class Balloon bal= new Balloon(5,Color.BLUE); bal.inflate(); bal.pop();

  13. Parameter Passing • When we "call" a method: (in BalloonApp class) • We jump into the method with the arguments(Balloon class)

  14. Return statements • When a method is invoked or "called": • We jump into the method (with any params) • When a value is "returned" from a method • we exit method body • return value replaces the "caller"

  15. Why Classes and Objects ? • It may seem overwhelming or unnecessary at first • As the complexity/size of your code increases, classes will help you modularize your code • Helps you visualize and solve problems better • Brings more order into your code

  16. Dairy.java • make Lab12DairyApp folder • Create new class, Dairy.java fill in definition of • Constructor • getNumCows • addCow • Create a new class DairyApp.java • test your new Dairy class by constructing a dairy farm, adding cows and printing the number of cows

More Related