Unformatted text preview:

Object Oriented Design Classes Method for designing computer programs Consider objects interacting in the program Example a zoo a gradebook OOD Goals Robustness Gracefully handle failures Adaptability Evolve as necessary Reusability Many programs use same piece of code OOD Principles Abstraction Abstract Data Types ADTs Interfaces Encapsulation Information Hiding Modularity Easily plug together components What is a class Data and the methods that operate on that data collectively called members Example bank account class Provide structure for organizing programs Methods Typically data variables declared private Methods operate on data accessors read data provide access to data but do not change it mutators change data examples from bank account zoo constructor builds a new object 1 Writing Classes Must be implemented in a file named classname java well there are also inner classes Creating and Using Objects BankAccount b new BankAccount 500 Type Name new Type constructor parameters BankAccount Class public BankAccount double balance public void withdraw double amount public void deposit double amount public double checkBalance Creating and Using Objects how would you withdraw funds b withdraw 300 object name method name param list how would you withdraw funds Constructor Special case function called when a new object is created Used to initialize member variables Examples Default constructor takes no parameters Flight class Think about the design of a class to represent a flight Data members Methods 2 Exercises 1 Implement and test the Flight class static Static class member a variable with scope the same as a class member 1 per class not per object Example car serial number Scope What is the scope of each of the variables you declared in your flight class Exercises 1 Design implement and test a Passenger class Make sure that you keep track of the passenger s frequent flyer number 3


View Full Document

USF CS 112 - Lecture Notes

Documents in this Course
Structs

Structs

4 pages

Trees

Trees

25 pages

Strings

Strings

27 pages

Queues

Queues

3 pages

Trees

Trees

24 pages

Arrays

Arrays

5 pages

ArrayList

ArrayList

24 pages

Stacks

Stacks

2 pages

Stacks

Stacks

8 pages

Trees

Trees

24 pages

Stacks

Stacks

8 pages

Queues

Queues

16 pages

Queues

Queues

17 pages

Queues

Queues

17 pages

Load more
Loading Unlocking...
Login

Join to view Lecture Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture Notes and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?