Java Programming 3 e Concepts and Techniques Chapter

  • Slides: 51
Download presentation
Java Programming, 3 e Concepts and Techniques Chapter 4 Decision Making and Repetition with

Java Programming, 3 e Concepts and Techniques Chapter 4 Decision Making and Repetition with Reusable Objects

Chapter Objectives • Design a program using methods • Code a selection structure to

Chapter Objectives • Design a program using methods • Code a selection structure to make decisions in code • Describe the use of the logical AND, OR, and NOT operators • Define exceptions and exception handling Chapter 4: Decision Making and Repetition with Reusable Objects 2

Chapter Objectives • Code a try statement and a catch statement to handle exceptions

Chapter Objectives • Code a try statement and a catch statement to handle exceptions • Create a user-defined method • Code a repetition structure using the while statement • Write a switch statement to test for multiple values in data Chapter 4: Decision Making and Repetition with Reusable Objects 3

Chapter Objectives • Format numbers using a pattern and the format() method • Construct

Chapter Objectives • Format numbers using a pattern and the format() method • Construct a Color object • Use a Checkbox and a Checkbox. Group in the user interface Chapter 4: Decision Making and Repetition with Reusable Objects 4

Introduction • Control structures alter the sequential execution of code – Selection structure –

Introduction • Control structures alter the sequential execution of code – Selection structure – Repetition structure • User-defined methods break tasks into reusable sections of code • Exception handling in Java allows for the testing of valid and accurate input Chapter 4: Decision Making and Repetition with Reusable Objects 5

The Sales Commission Program • Calculate sales commission for agents in a travel agency

The Sales Commission Program • Calculate sales commission for agents in a travel agency • Coded as a console application and an applet • Input – The user chooses from three types of commission codes • The commission code identifies the type of sale and the commission rate – The user enters a sales amount • Calculate commission and display output Chapter 4: Decision Making and Repetition with Reusable Objects 6

Chapter 4: Decision Making and Repetition with Reusable Objects 7

Chapter 4: Decision Making and Repetition with Reusable Objects 7

Program Development • Problem analysis – Each user decision corresponds to a program task

Program Development • Problem analysis – Each user decision corresponds to a program task – Develop and test each task before adding it to the program • Design the solution – Design storyboards for the two user interfaces • Program design – Design a flowchart consisting of required methods – Write related pseudocode for each method • Validate Design Chapter 4: Decision Making and Repetition with Reusable Objects 8

Chapter 4: Decision Making and Repetition with Reusable Objects 9

Chapter 4: Decision Making and Repetition with Reusable Objects 9

Coding the Program • Code the program using program stubs – Stubs are incomplete

Coding the Program • Code the program using program stubs – Stubs are incomplete portions of code that serve as a template or placeholder for later code – Stubs allow ease in debugging through incremental compilation and testing • Import java. swing. JOption. Pane • Import java. text. Decimal. Format – Formats decimal output into Strings • Declare variables • Compile and test the program stub Chapter 4: Decision Making and Repetition with Reusable Objects 10

Coding the Program Chapter 4: Decision Making and Repetition with Reusable Objects 11

Coding the Program Chapter 4: Decision Making and Repetition with Reusable Objects 11

Writing Methods • A program with modules allows for clarity, reusability, and refinement •

Writing Methods • A program with modules allows for clarity, reusability, and refinement • The code for each module can be separated into programmer-defined methods • The main() method transfers execution to the methods through a call statement • The called method returns control to its caller with the return statement or the ending brace – The return statement returns any required data back to the calling method Chapter 4: Decision Making and Repetition with Reusable Objects 12

Chapter 4: Decision Making and Repetition with Reusable Objects 13

Chapter 4: Decision Making and Repetition with Reusable Objects 13

The if…else Statement • Single: line 30, line 31 • Block: lines 15 -27,

The if…else Statement • Single: line 30, line 31 • Block: lines 15 -27, lines 19 -20, lines 24 -25 • Nested: lines 17 -26, lines 30 -31 Chapter 4: Decision Making and Repetition with Reusable Objects 14

Chapter 4: Decision Making and Repetition with Reusable Objects 15

Chapter 4: Decision Making and Repetition with Reusable Objects 15

Testing with an if statement • Testing a single condition – if (answer ==

Testing with an if statement • Testing a single condition – if (answer == null) – if (!done) • Testing multiple conditions – if ((gender == “male”) && (age >= 18)) – if ((age < 13) || (age > 65)) – AND and OR expressions evaluate the right operand only if the left operand is not sufficient to decide the condition Chapter 4: Decision Making and Repetition with Reusable Objects 16

Exception Handling • An exception is an event resulting from an erroneous situation which

Exception Handling • An exception is an event resulting from an erroneous situation which disrupts normal program flow • Exception handling is the concept of planning for possible exceptions by directing the program to deal with them gracefully, without terminating • Three kinds of exceptions – I/O – Run-time – Checked • The compiler checks each method to ensure each method has a handler Chapter 4: Decision Making and Repetition with Reusable Objects 17

Handling Exceptions • The try statement identifies a block of statements that may potentially

Handling Exceptions • The try statement identifies a block of statements that may potentially throw an exception • The throw statement transfers execution from the method that caused the exception to the handler – Transfers execution to the catch statement if the throw is placed within a try statement • The catch statement identifies the type of exception being caught and statements to describe or fix the error • The finally statement is optional and is always executed regardless of whether an exception has taken place – Placed after the catch statement Chapter 4: Decision Making and Repetition with Reusable Objects 18

Chapter 4: Decision Making and Repetition with Reusable Objects 19

Chapter 4: Decision Making and Repetition with Reusable Objects 19

Chapter 4: Decision Making and Repetition with Reusable Objects 20

Chapter 4: Decision Making and Repetition with Reusable Objects 20

Catch an exception Throw an exception Chapter 4: Decision Making and Repetition with Reusable

Catch an exception Throw an exception Chapter 4: Decision Making and Repetition with Reusable Objects 21

Throwing an Exception • Compile the program after coding each method and call statement

Throwing an Exception • Compile the program after coding each method and call statement • Run the program with correct input • Run the program to test the exception handling with invalid input – Alphabetic data – Negative values – Null or zero values • Verify that the user is allowed to reenter data • Verify the program closes correctly Chapter 4: Decision Making and Repetition with Reusable Objects 22

Repetition Structure Chapter 4: Decision Making and Repetition with Reusable Objects 23

Repetition Structure Chapter 4: Decision Making and Repetition with Reusable Objects 23

The get. Sales() method Chapter 4: Decision Making and Repetition with Reusable Objects 24

The get. Sales() method Chapter 4: Decision Making and Repetition with Reusable Objects 24

The get. Code() method Chapter 4: Decision Making and Repetition with Reusable Objects 25

The get. Code() method Chapter 4: Decision Making and Repetition with Reusable Objects 25

The Case Structure • A type of selection structure that allows for more than

The Case Structure • A type of selection structure that allows for more than two choices when the condition is evaluated • Used when there are many possible, valid choices for user input • The code evaluates the user choice with a switch statement and looks for a match in each case statement • Each case statement contains a ending break statement which forces exit of the structure Chapter 4: Decision Making and Repetition with Reusable Objects 26

Chapter 4: Decision Making and Repetition with Reusable Objects 27

Chapter 4: Decision Making and Repetition with Reusable Objects 27

The get. Comm() Method Chapter 4: Decision Making and Repetition with Reusable Objects 28

The get. Comm() Method Chapter 4: Decision Making and Repetition with Reusable Objects 28

Arguments and Parameters • When a method is called, the calling method sends arguments;

Arguments and Parameters • When a method is called, the calling method sends arguments; the called method accepts the values as parameters • Different but related identifier names for the arguments and the parameters should be used for good program design – The variables are only visible in their respective methods • Arguments and parameters for a called method and the calling statement must be of the same number, order, and data type Chapter 4: Decision Making and Repetition with Reusable Objects 29

Formatting Numeric Output • The Decimal. Format class formats decimal numbers into Strings for

Formatting Numeric Output • The Decimal. Format class formats decimal numbers into Strings for output • Supports different locales, leading and trailing zeros, prefixes/suffixes, and separators • The argument is a pattern, which determines how the formatted number should be displayed Chapter 4: Decision Making and Repetition with Reusable Objects 30

Chapter 4: Decision Making and Repetition with Reusable Objects 31

Chapter 4: Decision Making and Repetition with Reusable Objects 31

The output() method Chapter 4: Decision Making and Repetition with Reusable Objects 32

The output() method Chapter 4: Decision Making and Repetition with Reusable Objects 32

The finish() method Exits system when program completes successfully Chapter 4: Decision Making and

The finish() method Exits system when program completes successfully Chapter 4: Decision Making and Repetition with Reusable Objects 33

Moving to the Web • Create the host document to execute the applet Chapter

Moving to the Web • Create the host document to execute the applet Chapter 4: Decision Making and Repetition with Reusable Objects 34

Coding an Applet Stub • Enter general block comments • Import java. awt. *,

Coding an Applet Stub • Enter general block comments • Import java. awt. *, java. applet. *, java. awt. event. *, and java. text. Decimal. Format • Implement the Item. Listener interface to listen for the user choice on a Checkbox • Code the method headers for the init() and the item. State. Changed() method – item. State. Changed() is an Item. Listener method to process user choices • Declare variables and construct a Color object Chapter 4: Decision Making and Repetition with Reusable Objects 35

Chapter 4: Decision Making and Repetition with Reusable Objects 36

Chapter 4: Decision Making and Repetition with Reusable Objects 36

Making Decisions in Applets • Use a Checkbox. Group to allow user choices Chapter

Making Decisions in Applets • Use a Checkbox. Group to allow user choices Chapter 4: Decision Making and Repetition with Reusable Objects 37

Constructing Applet Components • Construct Labels for input and output • Construct a Checkbox.

Constructing Applet Components • Construct Labels for input and output • Construct a Checkbox. Group for user options Chapter 4: Decision Making and Repetition with Reusable Objects 38

Constructing Applet Components • Add Labels and Checkbox. Group to the applet • Add

Constructing Applet Components • Add Labels and Checkbox. Group to the applet • Add an Item. Listener to each Checkbox component with the add. Item. Listener() method • Add color with the set. Foreground() and the set. Background() methods • Set the insertion point with the request. Focus() method Chapter 4: Decision Making and Repetition with Reusable Objects 39

The init() Method Chapter 4: Decision Making and Repetition with Reusable Objects 40

The init() Method Chapter 4: Decision Making and Repetition with Reusable Objects 40

Handling Exceptions • Check for valid data when the item. State. Changed() method is

Handling Exceptions • Check for valid data when the item. State. Changed() method is triggered, which happens when the user clicks an option button Chapter 4: Decision Making and Repetition with Reusable Objects 41

The get. Sales() Method • Parse the data from the Text. Field and return

The get. Sales() Method • Parse the data from the Text. Field and return a valid sales amount or throw an exception to the init() method Chapter 4: Decision Making and Repetition with Reusable Objects 42

The get. Code() Method • Initialize the code to 0 • Use nested if

The get. Code() Method • Initialize the code to 0 • Use nested if statements to assess the boolean state of the Checkboxes and return the code to init() Chapter 4: Decision Making and Repetition with Reusable Objects 43

The get. Comm() Method • Identical to the application • Return the commission value

The get. Comm() Method • Identical to the application • Return the commission value to init() Chapter 4: Decision Making and Repetition with Reusable Objects 44

The output() Method • Send output to the Label using set. Text() • Construct

The output() Method • Send output to the Label using set. Text() • Construct and use Decimal. Format, using the special character # to make a leading zero absent Chapter 4: Decision Making and Repetition with Reusable Objects 45

The paint() Method • Display a graphic Chapter 4: Decision Making and Repetition with

The paint() Method • Display a graphic Chapter 4: Decision Making and Repetition with Reusable Objects 46

Compiling and Testing the Applet • Compile the applet • Execute the applet using

Compiling and Testing the Applet • Compile the applet • Execute the applet using Applet. Viewer • Test exception handling by clicking an option button and then typing invalid data into the text box • Verify the error message and the data clearing mechanisms • Test all options with valid data • Test in a browser window • Document the applet interface and source code Chapter 4: Decision Making and Repetition with Reusable Objects 47

Chapter Summary • Design a program using methods • Code a selection structure to

Chapter Summary • Design a program using methods • Code a selection structure to make decisions in code • Describe the use of the logical AND, OR, and NOT operators • Define exceptions and exception handling Chapter 4: Decision Making and Repetition with Reusable Objects 48

Chapter Summary • Code a try statement and a catch statement to handle exceptions

Chapter Summary • Code a try statement and a catch statement to handle exceptions • Create a user-defined method • Code a repetition structure using the while statement • Write a switch statement to test for multiple values in data Chapter 4: Decision Making and Repetition with Reusable Objects 49

Chapter Summary • Format numbers using a pattern and the format() method • Construct

Chapter Summary • Format numbers using a pattern and the format() method • Construct a Color object • Use a Checkbox and a Checkbox. Group in the user interface Chapter 4: Decision Making and Repetition with Reusable Objects 50

Java Programming, 3 e Concepts and Techniques Chapter 4 Complete

Java Programming, 3 e Concepts and Techniques Chapter 4 Complete