cs 211 interfaces exceptions n.
Skip this Video
Loading SlideShow in 5 Seconds..
CS 211 Interfaces, Exceptions PowerPoint Presentation
Download Presentation
CS 211 Interfaces, Exceptions

Loading in 2 Seconds...

play fullscreen
1 / 13

CS 211 Interfaces, Exceptions - PowerPoint PPT Presentation

  • Uploaded on

CS 211 Interfaces, Exceptions. CS 211 Interfaces, Exceptions. Today’s lecture. Review of chapter 8 Go over examples. Interfaces. Why would I use an interface? How do I create an interface? Use it? Interfaces are types. What does this mean? How are interfaces similar to abstract classes?

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'CS 211 Interfaces, Exceptions' - vanna

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
cs 211 interfaces exceptions
CS 211Interfaces, Exceptions

CS 211Interfaces, Exceptions

today s lecture
Today’s lecture
  • Review of chapter 8
  • Go over examples
  • Why would I use an interface?
  • How do I create an interface? Use it?
  • Interfaces are types. What does this mean?
  • How are interfaces similar to abstract classes?
  • How are interfaces different from abstract classes?
examples of interfaces
Examples of Interfaces

java.lang.Comparable. one method:

→ return negative : "less than", zero : "equal", positive : "greater than".→ gives us a consistent way to sort data.

Example: The String class implements Comparable. (compareTois available on Strings)

java.lang.Iterator. Three methods:

public intcompareTo(Object other);

public booleanhasNext();

public Object next ();

public void remove ();

today s lecture1
Today’s lecture
  • Review of chapter 9
  • Go over examples
exceptions specialized control flow
Exceptions: Specialized Control Flow
  • When would I use an exception over an if statement?
  • What is an exception? How do I use it?
    • What are catch blocks? Multiple catch blocks? Finally block? Why?
  • What does it mean to propagate an exception?

Chapter 11 in the text

kinds of exceptions
Kinds of Exceptions
  • Checked Exceptions: we must annotate the method signature admitting that our code could cause an exception. You can list many unhandled exceptions this way for a single method.
  • Unchecked Exceptions can also be unhandled, but don't require the throws annotation: no try-catch block used around the suspicious code, and no further annotations. Only Error, RuntimeException and their child classes are unchecked. (You may still list them in the throws clause, as we did above for NullPointerException).
    • Error examples: failing disk, not enough memory; program can't solve these.
    • Runtime Exceptions: good indication of program bugs, not behaviors we expect in a 'correct' program; their causes should be fixed.

public intlazyBum(…)throws FileNotFoundException{..}public int foo () throws EOFException, IOException, NullPointerException{..}

creating your own exception classes
Creating Your Own Exception Classes

Exception definitions are classes. Extend these classes to make your own specialized exceptions.

  • use fields, write constructors to pass info around.

public class MyExceptionextends Exception{ public intnum; public String msg; public MyException (intnum, String msg) {

this.num = num;

this.msg = msg;



using your own exceptions
Using Your Own Exceptions
  • create values by calling the constructor.

MyExceptionmyExc = new MyException(5,"yo");

  • begin exception propagation with a throw statement:


  • or create and throw, all at once:

throw new MyException(6,"hiya!");