<< Chapter < Page Chapter >> Page >

Method overriding is different from method overloading . Method overloading will be discussed in the next module.

What's next?

In the next module, I will explain the use of overloaded methods for the purpose of achieving compile-time polymorphism.

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Java OOP: Inheritance, Part 2
  • File: Java1606.htm
  • Published: 01/28/02
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download a PDF file for thismodule at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, you should beaware that some of the HTML elements in this module may not translate well intoPDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version of the module.

In the past, unknown individuals have misappropriated copies of my modules from cnx.org, converted them to Kindle books, andplaced them for sale on Amazon.com showing me as the author. I receive no compensation for those sales and don't know who doesreceive compensation. If you purchase such a book, please be aware that it is a bootleg copy of a module that is freelyavailable on cnx.org.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

Complete program listing

A complete listing of the program is shown in Listing 5 below.

Listing 5 . The program named Radio03.
Copyright 2002, R.G.Baldwin Simulates the manufacture and use of acombination car radio and tape player. Uses method overriding to avoidmodifying the class named Radio. This program produces the followingoutput on the computer screen:Combo object constructed Play RadioPlaying the station at 93.5 Mhz Insert TapeTape is in Radio is offPlay Radio Remove the tape firstRemove Tape Tape is outRadio is on Play RadioPlaying the station at 93.5 Mhz Play TapeInsert the tape first Insert TapeTape is in Radio is offPlay Tape Tape is playingRemove Tape Tape is outRadio is on Play RadioPlaying the station at 93.5 Mhz **************************************/public class Radio03{ //This class simulates the// manufacturer and the human user public static void main(String[] args){Combo myObjRef = new Combo(); myObjRef.setStationNumber(3,93.5);myObjRef.playStation(3); myObjRef.insertTape();myObjRef.playStation(3); myObjRef.removeTape();myObjRef.playStation(3); myObjRef.playTape();myObjRef.insertTape(); myObjRef.playTape();myObjRef.removeTape(); myObjRef.playStation(3);}//end main }//end class Radio03//===================================// class Radio{//This class simulates the plans from // which the radio object is created.// This code is the same as in the // program named Radio01.protected double[] stationNumber =new double[5];public void setStationNumber(int index,double freq){ stationNumber[index]= freq; }//end method setStationNumber//This version of playStation doesn't// accommodate tape operations. public void playStation(int index){System.out.println( "Playing the station at "+ stationNumber[index] + " Mhz");}//end method playStation}//end class Radio //===================================//class Combo extends Radio{private boolean tapeIn = false; //---------------------------------//public Combo(){//constructorSystem.out.println( "Combo object constructed");}//end constructor //---------------------------------////Overridden playStation method. This// overridden version accommodates // tape operations.public void playStation(int index){ System.out.println("Play Radio");if(!tapeIn){ System.out.println(" Playing the station at " + stationNumber[index]+ " Mhz"); }else{System.out.println( " Remove the tape first");}//end if/else }//end method playStation//---------------------------------//public void insertTape(){ System.out.println("Insert Tape");tapeIn = true; System.out.println(" Tape is in"); System.out.println(" Radio is off"); }//end insertTape method//---------------------------------//public void removeTape(){ System.out.println("Remove Tape");tapeIn = false; System.out.println(" Tape is out"); System.out.println(" Radio is on"); }//end removeTape method//---------------------------------//public void playTape(){ System.out.println("Play Tape");if(!tapeIn){ System.out.println(" Insert the tape first"); }else{System.out.println( " Tape is playing");}//end if/else }//end playTape}//end class combo

-end-

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask