Georgia Institute of Technology Creating Classes part 2 Barb Ericson Georgia Institute of Technology June 2006.

Slides:



Advertisements
Similar presentations
Introduction to Eclipse. Start Eclipse Click and then click Eclipse from the menu: Or open a shell and type eclipse after the prompt.
Advertisements

COMPUTER PROGRAMMING I Essential Standard 5.02 Understand Breakpoint, Watch Window, and Try And Catch to Find Errors.
ManipulatingPictures-Mod6-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology.
Georgia Institute of Technology DrJava Appendix A Barb Ericson Georgia Institute of Technology May 2006.
Lecture Roger Sutton CO331 Visual programming 15: Debugging 1.
The IDE (Integrated Development Environment) provides a DEBUGGER for locating and correcting errors in program logic (logic errors not syntax errors) The.
CPSC1301 Computer Science 1 Chapter 11 Creating Classes part 1.
Debugging Projects Using C++.NET Click with the mouse button to control the flow of the presentation.
Author: Loh Jianxiong Christopher Editors: Chua Jie Sheng, Li Mengran, Peh Shao Hong, Oo Theong Siang.
CreatingClasses-part11 Creating Classes part 1 Barb Ericson Georgia Institute of Technology Dec 2009.
CPSC1301 Computer Science 1 Overview of Dr. Java.
Georgia Institute of Technology Creating Classes part 1 Barb Ericson Georgia Institute of Technology Oct 2005.
Debugging in Java. Common Bugs Compilation or syntactical errors are the first that you will encounter and the easiest to debug They are usually the result.
Georgia Institute of Technology Declaring Variables – Mod 4 Barb Ericson Georgia Institute of Technology August 2005.
CSC1401 Classes - 1. Learning Goals Computing concepts Identifying objects and classes Declaring a class Declaring fields Default field values.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops Barb Ericson Georgia Institute of Technology August 2005.
CSC1401 Classes - 2. Learning Goals Computing concepts Adding a method To show the pictures in the slide show Creating accessors and modifiers That protect.
Georgia Institute of Technology Declaring Variables – Mod 4 Barb Ericson Georgia Institute of Technology August 2005.
CreatingSubclasses1 Barb Ericson Georgia Institute of Technology Dec 2009.
CPSC1301 Computer Science 1 Chapter 4 Manipulating Pictures, Arrays, and Loops part 5.
Georgia Institute of Technology Creating Classes part 4 Barb Ericson Georgia Institute of Technology May 2006.
CreatingClasses-SlideShow-part41 Creating Classes part 4 Barb Ericson Georgia Institute of Technology Dec 2009.
CreatingClasses-SlideShow-part31 Creating Classes part 3 Barb Ericson Georgia Institute of Technology Dec 2009.
NETBEANS DEBUGGER.  To create a breakpoint place the cursor at the desired location.  Go to the Run -> toogle line Breakpoint or Ctrl +F8. It creates.
Georgia Institute of Technology More on Creating Classes part 1 Barb Ericson Georgia Institute of Technology Oct 2005.
Georgia Institute of Technology More on Creating Classes part 3 Barb Ericson Georgia Institute of Technology Nov 2005.
Debugging tools in Flash CIS 126. Debugging Flash provides several tools for testing ActionScript in your SWF files. –The Debugger, lets you find errors.
SourceAnatomy1 Java Source Anatomy Barb Ericson Georgia Institute of Technology July 2008.
Debugging What coders (programmers) do to find the errors (“bugs”) in their own programs “Bugs” – Admiral Grace Hopper, developer of the world’s first.
ManipulatingPictures-part31 Manipulating Pictures, Arrays, and Loops part 3 Barb Ericson Georgia Institute of Technology Nov 2009.
04-ManipulatingPictures-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology June 2008.
Netbeans QuickStart. Creating a project File->New Project –For now you want General->Java Application –Then fill in the project details.
Georgia Institute of Technology Dr Usman Saeed Assistant Professor Faculty of Computing and Information Technology North Jeddah Branch King Abdulaziz University.
Georgia Institute of Technology More on Creating Classes Barb Ericson Georgia Institute of Technology June 2006.
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
Debugging with Eclipse
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Manipulating Pictures, Arrays, and Loops part 3
Testing and Debugging.
Computer Programming I
Debugging CMSC 202.
Creating and Modifying Text part 2
Barb Ericson Georgia Institute of Technology Dec 2009
Important terms Black-box testing White-box testing Regression testing
Important terms Black-box testing White-box testing Regression testing
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops part 2
Manipulating Pictures, Arrays, and Loops
Debugging with Eclipse
Debuggers.
Manipulating Pictures, Arrays, and Loops part 5
Tonga Institute of Higher Education
Using a Debugger 1-Jan-19.
Debugging Taken from notes by Dr. Neil Moore
Teaching Java using Turtles part 3
Barb Ericson Georgia Institute of Technology Oct 2005
Manipulating Pictures, Arrays, and Loops
Our Environment We will exercise on Microsoft Visual C++ v.6
Debugging Taken from notes by Dr. Neil Moore
Debugging Visual Basic Programs
Barb Ericson Georgia Institute of Technology June 2005
More on Creating Classes
Manipulating Pictures, Arrays, and Loops
Barb Ericson Georgia Institute of Technology Oct 2005
More on Creating Classes part 3
Debugging with Eclipse
Workshop for Programming And Systems Management Teachers
Presentation transcript:

Georgia Institute of Technology Creating Classes part 2 Barb Ericson Georgia Institute of Technology June 2006

Georgia Institute of Technology Learning Goals Computing concepts –Declaring a constructor –Overloading constructors Adding a no-argument constructor –Using a debugger to step through execution How to start the debugger How to set a breakpoint How to check the value of a variable or field

Georgia Institute of Technology Constructors Are used to initialize the fields of an object –To other than the default values or assigned values You can have more than one constructor –As long as the parameter lists are different –This is called overloading constructors Syntax –visibility ClassName(paramList) {} Example public SlideShow(Picture[] pictArray) { this.pictureArray = pictArray; }

Georgia Institute of Technology Creating 1D Arrays You can declare an array using –Type[] arrayName; You can create an array using –new Type[size]; You can declare an array and create it at the same time –Type[] arrayName = new Type[size]; Array indices start at 0 and end at length – 1 You can get the length of an array using –arrayName.length You can add an element to an array using –name[index] = Object;

Georgia Institute of Technology Add a Constructor Add the following after the field declarations to SlideShow.java: public SlideShow(Picture[] pictArray) { this.pictureArray = pictArray; } Compile and test SlideShow showObj = new SlideShow();

Georgia Institute of Technology Why did you get an Error? We hadn’t declared any constructors before we added this one –But a constructor is called each time a new object is created –We didn’t provide one so the compiler added a no- argument constructor One that takes no parameters and leaves the fields with their default or assigned values But once you add a constructor –The compiler will not add any for you So now you get an error when you try to use a no-argument constructor

Georgia Institute of Technology Adding a No-Argument Constructor Add the following constructor to the Student class –public SlideShow() {} Now test it again with: SlideShow showObj = new SlideShow(); System.out.println(showObj); Also try: Picture[] pictArray = new Picture[5]; pictArray[0] = new Picture(FileChooser.getMediaPath("beach.jpg")); pictArray[1] = new Picture(FileChooser.getMediaPath("blueShrub.jpg")); pictArray[2] = new Picture(FileChooser.getMediaPath("church.jpg")); pictArray[3] = new Picture(FileChooser.getMediaPath("eiffel.jpg")); pictArray[4] = new Picture(FileChooser.getMediaPath("greece.jpg")); SlideShow vacShow = new SlideShow(pictArray); System.out.println(vacShow);

Georgia Institute of Technology Tracing Execution One way to trace what is happening in your program is –To add System.out.println() statements Add these to print out the value of the picture array both before and after it is set –System.out.println(this.pictureArray); –this.pictureArray = pictArray; –System.out.println(this.pictureArray);

Georgia Institute of Technology Debuggers You can use a debugger to find the cause of bugs (errors in your program) –A moth caused one bug – mputer_bug.htm And to trace execution to see what is happening –Which constructor is executed or what method is executed –What values are in the fields

Georgia Institute of Technology DrJava’s Debugger Click on Debugger in the menu –Then check the Debug Mode checkbox Watches and Breakpoints Area Stack and Threads Area Check values here

Georgia Institute of Technology Setting a Breakpoint When you use a debugger you often want to set places to stop execution –Each place to stop at is a breakpoint Once execution has stopped there –You can check the value of parameters and fields To set a breakpoint –Right click on a line of code –Pick “Toggle Breakpoint” –It will be highlighted in red

Georgia Institute of Technology Showing a Breakpoint Lines with breakpoints are highlighted in red in DrJava Set a breakpoint at the line that sets the picture array

Georgia Institute of Technology Testing a Breakpoint Try the constructor again that takes an array of pictures Execution should stop at the breakpoint –And the color will change to blue

Georgia Institute of Technology Checking Values Execution stops before the breakpoint line is executed –So the array hasn't been set yet –Check this by printing out the value of it in the interactions pane this.pictureArray –Then click on the Step Over button To let the current line of code be executed –And check the values again

Georgia Institute of Technology Debugging Options Step Over –Execute the current line of code and then stop again before you execute the next line of code Step Into –If the line of code that we are stopped at has a method call in it stop at the first line in the called method Resume –Continue execution at the current point Until the next breakpoint Or the program ends Step Out –Execute the rest of the current method and stop at the first line after the call to this method You can quit debugging by clicking on the X

Georgia Institute of Technology Adding a Constructor Exercise Create another constructor in the SlideShow class –That takes both the array of pictures and the time to wait between pictures public SlideShow(Picture[] pictArray, int time) –Use the debugger to check what happens during execution of this constructor

Georgia Institute of Technology Summary Constructors initialize the fields in an object To declare a constructor –public ClassName(paramList) {} No return type Same name as the class You can overload constructors –The parameter lists must be different Use a debugger –To watch what happens during execution