# CS 61B Discussion 5: Inheritance II Fall 2014

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 CS 61B Discussion 5: Inheritance II Fall WeirdList Below is a partial solution to the WeirdList problem from homework 3 showing only the most important lines. Part A. Complete the implementation of WeirdList by adding a field. Then complete the lines in UseWeirdList (on the next page) such that wlone is a WeirdList containing only the number 1, and wltwoone contains the numbers 2 and 1. Ignore map for now. Throughout this problem, do not use any if, switch, while, for, do, or try statements, and do not use the?: operator. public class WeirdList { private int head; private WeirdList tail; /** The empty sequence of integers. */ public static final WeirdListEmpty EMPTY = new WeirdListEmpty(); /** Returns the number of elements in the sequence that * starts with THIS. */ public int length() { return 1 + tail.length(); public WeirdList(int h, WeirdList t) { head = h; tail = t; /** Apply FUNC.apply to every element of THIS WeirdList in * sequence, and return a WeirdList of the resulting values. */ public WeirdList map(intunaryfunction func) { return new WeirdList(func.apply(head), tail.map(func)); public class WeirdListEmpty extends WeirdList{ public int length() { return 0; public WeirdListEmpty() { super(0, null); public WeirdList map(intunaryfunction func) { return this; /* Return yourself, a WeirdListEmpty. */ public interface IntUnaryFunction { /** Return the result of applying this function to X. */ int apply(int x); CS 61B, Fall 2014, Discussion 5: Inheritance II 1

2 public class UseWeirdList { /** Sets wlone to be a WeirdList containing one. * and wltwoone to be a WeirdList containing two, then one. */ public static void main(string[] args) { WeirdList wlone = new WeirdList(1, WeirdList.EMPTY); WeirdList wltwoone = new WeirdList(2, wlone); /** Returns the maximum non-negative integer in W. If * no non-negative integers exist, return -1 instead. * Do not use recursion in the code for this method. */ public static int maxpos(weirdlist w) { Maximizer maximizer = new Maximizer(); L.map(maximizer); return maximizer.max; public class Maximizer implements IntUnaryFunction { public int max; public Maximizer() { max = -1; public int apply(int x) { max = Math.max(x, max); return max; Part B. Complete the WeirdListEmpty implementation by filling in the return statement for the map function. If you do not know how to proceed, ask your neighbors. If you know the answer, help out your neighbors. Do it quick, the next part is the intersting part. Part C. Implement the maxpos function. Hint: You ll need to create another class! Do not make recursive calls in your maxpos function or your new class. As throughout this entire problem, do not use any if, switch, while, for, do, or try statements, and do not use the?: operator. Part D. Follow-up: In your solution, did your return value for the apply method matter? The return value of the apply method doesn t matter, because we just end up taking the max member from Maximizer anyway. CS 61B, Fall 2014, Discussion 5: Inheritance II 2

4 5. The call to trr.read() results in a call to the read(char[], int, int) method of some instance of the FileReader class. T: Yes, since trr was instantiated with a FileReader. 6. The call to trr.read() results in a call to the read() method of the FileReader class. U: We don t know if FileReader overrides the default read() method. CS 61B, Fall 2014, Discussion 5: Inheritance II 4

5 3 Extra Questions (not covered in section) These questions might not make sense until you get around to understanding the basics covered in lectures 12 and 13. If this is the case, make sure to go and understand these lectures, and come back to these questions later. 1. The class RuntimeException has many subclasses. Why do they exist? Why don t we always throw a RuntimeException? 2. As we learned in class (if we were there), there are two types of exceptions: Checked Exceptions and Unchecked Exceptions. Any exception which is a subclass of Error or RuntimeException is unchecked. All other exceptions are considered checked. What are the two ways to keep the compiler happy if a method might throw a checked exception? 3. It might seem strange at first that exceptions that are subtypes of Exception or Error are treated differently, and are allowed to pass silently without being caught or specified. Why are these particular exceptions allowed to go unchecked? 4. The protected keyword specifies that a member can be accessed by other components of a package AND by subclasses. If we omit a keyword, a member is considered package protected, and may only be accessed by other package components (i.e. not by any subclasses). Why do you think the Java designers did this? 5. Suppose we have a class BundleOfDogs that stores objects of type Dog, which can be added using a put() method. Suppose that BundleOfDogs also has a method randomdoggenerator() that returns an object of type RandomDog. Suppose that the RandomDog class is implemented as a nested class (i.e. a class inside BundleOfDogs.java). Would it make more sense for RandomDog to be an inner class or a static class? CS 61B, Fall 2014, Discussion 5: Inheritance II 5

### Exceptions vs. Errors Exceptions vs. RuntimeExceptions try...catch...finally throw and throws

Lecture 14 Summary Exceptions vs. Errors Exceptions vs. RuntimeExceptions try...catch...finally throw and throws 1 By the end of this lecture, you will be able to differentiate between errors, exceptions,

### Lecture 14 Summary 3/9/2009. By the end of this lecture, you will be able to differentiate between errors, exceptions, and runtime exceptions.

Lecture 14 Summary Exceptions vs. Errors Exceptions vs. RuntimeExceptions...catch...finally throw and throws By the end of this lecture, you will be able to differentiate between errors, exceptions, and

### Rules and syntax for inheritance. The boring stuff

Rules and syntax for inheritance The boring stuff The compiler adds a call to super() Unless you explicitly call the constructor of the superclass, using super(), the compiler will add such a call for

### Prelim 1 Solutions. CS 2110, March 10, 2015, 5:30 PM Total Question True False. Loop Invariants Max Score Grader

Prelim 1 Solutions CS 2110, March 10, 2015, 5:30 PM 1 2 3 4 5 Total Question True False Short Answer Recursion Object Oriented Loop Invariants Max 20 15 20 25 20 100 Score Grader The exam is closed book

### Exception-Handling Overview

م.عبد الغني أبوجبل Exception Handling No matter how good a programmer you are, you cannot control everything. Things can go wrong. Very wrong. When you write a risky method, you need code to handle the

### Array. Prepared By - Rifat Shahriyar

Java More Details Array 2 Arrays A group of variables containing values that all have the same type Arrays are fixed length entities In Java, arrays are objects, so they are considered reference types

### Full file at Chapter 2 - Inheritance and Exception Handling

Chapter 2 - Inheritance and Exception Handling TRUE/FALSE 1. The superclass inherits all its properties from the subclass. ANS: F PTS: 1 REF: 76 2. Private members of a superclass can be accessed by a

### Tail Calls. CMSC 330: Organization of Programming Languages. Tail Recursion. Tail Recursion (cont d) Names and Binding. Tail Recursion (cont d)

CMSC 330: Organization of Programming Languages Tail Calls A tail call is a function call that is the last thing a function does before it returns let add x y = x + y let f z = add z z (* tail call *)

### What can go wrong in a Java program while running?

Exception Handling See https://docs.oracle.com/javase/tutorial/ essential/exceptions/runtime.html See also other resources available on the module webpage This lecture Summary on polymorphism, multiple

### CMSC 331 Second Midterm Exam

1 20/ 2 80/ 331 First Midterm Exam 11 November 2003 3 20/ 4 40/ 5 10/ CMSC 331 Second Midterm Exam 6 15/ 7 15/ Name: Student ID#: 200/ You will have seventy-five (75) minutes to complete this closed book

### Object Oriented Design. Object-Oriented Design. Inheritance & Polymorphism. Class Hierarchy. Goals Robustness Adaptability Flexible code reuse

Object-Oriented Design Object Oriented Design Goals Robustness Adaptability Flexible code reuse Principles Abstraction Encapsulation Modularity March 2005 Object Oriented Design 1 March 2005 Object Oriented

### Sri Vidya College of Engineering & Technology Question Bank

1. What is exception? UNIT III EXCEPTION HANDLING AND I/O Part A Question Bank An exception is an event, which occurs during the execution of a program, that disrupts the normal flow of the program s instructions.

### Do not turn to the next page until the start of the exam.

Principles of Java Language with Applications, PIC20a E. Ryu Fall 2017 Final Exam Monday, December 11, 2017 3 hours, 8 questions, 100 points, 9 pages While we don t expect you will need more space than

### AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS PAUL L. BAILEY Abstract. This documents amalgamates various descriptions found on the internet, mostly from Oracle or Wikipedia. Very little of this

### Answer Key. 1. General Understanding (10 points) think before you decide.

Answer Key 1. General Understanding (10 points) Answer the following questions with yes or no. think before you decide. Read the questions carefully and (a) (2 points) Does the interface java.util.sortedset

### Lecture 5: Implementing Lists, Version 1

CS18 Integrated Introduction to Computer Science Fisler, Nelson Lecture 5: Implementing Lists, Version 1 Contents 1 Implementing Lists 1 2 Methods 2 2.1 isempty...........................................

### Fundamentals of Object Oriented Programming

INDIAN INSTITUTE OF TECHNOLOGY ROORKEE Fundamentals of Object Oriented Programming CSN- 103 Dr. R. Balasubramanian Associate Professor Department of Computer Science and Engineering Indian Institute of

### CS 61B Data Structures and Programming Methodology. July 7, 2008 David Sun

CS 61B Data Structures and Programming Methodology July 7, 2008 David Sun Announcements You ve started (or finished) project 1, right? Package Visibility public declarations represent specifications what

Object-Oriented Design Lecture 8 CS 3500 Fall 2009 (Pucella) Tuesday, Oct 6, 2009 Subclassing for ADTs Implementation An interesting use of subclassing is to implement some forms of ADTs more cleanly,

### Object-Oriented Design. March 2005 Object Oriented Design 1

Object-Oriented Design March 2005 Object Oriented Design 1 Object Oriented Design Goals Robustness Adaptability Flexible code reuse Principles Abstraction Encapsulation Modularity March 2005 Object Oriented

### 16-Dec-10. Consider the following method:

Boaz Kantor Introduction to Computer Science IDC Herzliya Exception is a class. Java comes with many, we can write our own. The Exception objects, along with some Java-specific structures, allow us to

### Java Object Oriented Design. CSC207 Fall 2014

Java Object Oriented Design CSC207 Fall 2014 Design Problem Design an application where the user can draw different shapes Lines Circles Rectangles Just high level design, don t write any detailed code

### Exceptions. Examples of code which shows the syntax and all that

Exceptions Examples of code which shows the syntax and all that When a method might cause a checked exception So the main difference between checked and unchecked exceptions was that the compiler forces

### Programming II (CS300)

1 Programming II (CS300) Chapter 04: Exception Handling MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Creating Classes 2 Introduction Exception Handling Common Exceptions Exceptions with Methods Assertions and

### CS 455 Midterm Exam 2 Fall 2016 [Bono] November 8, 2016

Name: USC NetID (e.g., ttrojan): CS 455 Midterm Exam 2 Fall 2016 [Bono] November 8, 2016 There are 7 problems on the exam, with 50 points total available. There are 8 pages to the exam (4 pages double-sided),

### Administration. Exceptions. Leftovers. Agenda. When Things Go Wrong. Handling Errors. CS 99 Summer 2000 Michael Clarkson Lecture 11

Administration Exceptions CS 99 Summer 2000 Michael Clarkson Lecture 11 Lab 10 due tomorrow No lab tomorrow Work on final projects Remaining office hours Rick: today 2-3 Michael: Thursday 10-noon, Monday

### Project #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently.

Project #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently. User Request: Create a simple magazine data system. Milestones:

### CS61B Lecture #11. Please report problems (missing files, malfunctions of submit, etc.) by , not by the newsgroup, for faster service.

CS61B Lecture #11 Please report problems (missing files, malfunctions of submit, etc.) by email, not by the newsgroup, for faster service. Midterm is 9 March at 6:30PM in 10 Evans. Last modified: Fri Feb

### CSE 331 Final Exam 3/16/15 Sample Solution

Question 1. (12 points, 3 each) A short design exercise. Suppose Java did not include a Set class in the standard library and we need to store a set of Strings for an application. We know that the maximum

### CS159. Nathan Sprague

CS159 Nathan Sprague What s wrong with the following code? 1 /* ************************************************** 2 * Return the mean, or -1 if the array has length 0. 3 ***************************************************

### Exceptions, try - catch - finally, throws keyword. JAVA Standard Edition

Exceptions, try - catch - finally, throws keyword JAVA Standard Edition Java - Exceptions An exception (or exceptional event) is a problem that arises during the execution of a program. When an Exception

### COMP1008 Exceptions. Runtime Error

Runtime Error COMP1008 Exceptions Unexpected error that terminates a program. Undesirable Not detectable by compiler. Caused by: Errors in the program logic. Unexpected failure of services E.g., file server

### Midterm Exam CS 251, Intermediate Programming March 6, 2015

Midterm Exam CS 251, Intermediate Programming March 6, 2015 Name: NetID: Answer all questions in the space provided. Write clearly and legibly, you will not get credit for illegible or incomprehensible

### CISC-124. Passing Parameters. A Java method cannot change the value of any of the arguments passed to its parameters.

CISC-124 20180215 These notes are intended to summarize and clarify some of the topics that have been covered recently in class. The posted code samples also have extensive explanations of the material.

### EECS2030 Week 7 worksheet Tue Feb 28, 2017

1. Interfaces The Comparator interface provides a way to control how a sort method (such as Collections.sort) sorts elements of a collection. For example, the following main method sorts a list of strings

### CS61B Lecture #8. Last modified: Fri Sep 17 12:18: CS61B: Lecture #8 1

CS61B Lecture #8 Midterm tentatively scheduled for the evening of 19 October(Tuesday). Format: 2 hour, open-book. We will accommodate students with conflicts as needed; please arrange an alternative time

### Programming II (CS300)

1 Programming II (CS300) Chapter 04: Exception Handling MOUNA KACEM mouna@cs.wisc.edu Spring 2018 Creating Classes 2 Introduction Exception Handling Common Exceptions Exceptions with Methods Assertions

### CS558 Programming Languages

CS558 Programming Languages Fall 2017 Lecture 7b Andrew Tolmach Portland State University 1994-2017 Type Inference Some statically typed languages, like ML (and to a lesser extent Scala), offer alternative

### School of Informatics, University of Edinburgh

CS1Bh Solution Sheet 4 Software Engineering in Java This is a solution set for CS1Bh Question Sheet 4. You should only consult these solutions after attempting the exercises. Notice that the solutions

### CSE Programming Languages Final exam - Spring Answer Key

CSE 341 - Programming Languages Final exam - Spring 2018 - Answer Key 1. (8 points) Write a Racket function multicons that takes an item x, a non-negative integer n, and a list xs; and returns a new list

### CS61B Lecture #12. Public Service Announcement. Miscellaneous Topics: What to do About Errors? throw new SomeException (optional description);

Public Service Announcement DDoSki is back with Cal Hacks 2.0 on October 9th-11th! Applications will remain open for Cal undergrads till October 4th, so make sure to submit yours soon! Additionally, if

### More on Exception Handling

Chapter 18 More on Exception Handling Lecture slides for: Java Actually: A Comprehensive Primer in Programming Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cengage Learning, 2008. ISBN: 978-1-844480-933-2

### CS 231 Data Structures and Algorithms, Fall 2016

CS 231 Data Structures and Algorithms, Fall 2016 Dr. Bruce A. Maxwell Department of Computer Science Colby College Course Description Focuses on the common structures used to store data and the standard

### More on Objects in JAVA TM

More on Objects in JAVA TM Inheritance : Definition: A subclass is a class that extends another class. A subclass inherits state and behavior from all of its ancestors. The term superclass refers to a

### CS 3 Introduction to Software Engineering. 3: Exceptions

CS 3 Introduction to Software Engineering 3: Exceptions Questions? 2 Objectives Last Time: Procedural Abstraction This Time: Procedural Abstraction II Focus on Exceptions. Starting Next Time: Data Abstraction

### CS 11 java track: lecture 3

CS 11 java track: lecture 3 This week: documentation (javadoc) exception handling more on object-oriented programming (OOP) inheritance and polymorphism abstract classes and interfaces graphical user interfaces

### More on Exception Handling

Chapter 18 More on Exception Handling Lecture slides for: Java Actually: A Comprehensive Primer in Programming Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cengage Learning, 2008. ISBN: 978-1-844480-933-2

### PIC 20A Exceptions. Ernest Ryu UCLA Mathematics. Last edited: November 27, 2017

PIC 20A Exceptions Ernest Ryu UCLA Mathematics Last edited: November 27, 2017 Introductory example Imagine trying to read from a file. import java.io.*; public class Test { public static void main ( String

### Practice Questions for Final Exam: Advanced Java Concepts + Additional Questions from Earlier Parts of the Course

: Advanced Java Concepts + Additional Questions from Earlier Parts of the Course 1. Given the following hierarchy: class Alpha {... class Beta extends Alpha {... class Gamma extends Beta {... In what order

### Project 1 Computer Science 2334 Spring 2016 This project is individual work. Each student must complete this assignment independently.

Project 1 Computer Science 2334 Spring 2016 This project is individual work. Each student must complete this assignment independently. User Request: Create a simple movie data system. Milestones: 1. Use

### Le L c e t c ur u e e 5 To T p o i p c i s c t o o b e b e co c v o e v r e ed e Exception Handling

Course Name: Advanced Java Lecture 5 Topics to be covered Exception Handling Exception HandlingHandlingIntroduction An exception is an abnormal condition that arises in a code sequence at run time A Java

### CIS133J. Working with Numbers in Java

CIS133J Working with Numbers in Java Contents: Using variables with integral numbers Using variables with floating point numbers How to declare integral variables How to declare floating point variables

### Java in 21 minutes. Hello world. hello world. exceptions. basic data types. constructors. classes & objects I/O. program structure.

Java in 21 minutes hello world basic data types classes & objects program structure constructors garbage collection I/O exceptions Strings Hello world import java.io.*; public class hello { public static

### CSE P 501 Exam 8/5/04

Name There are 7 questions worth a total of 65 points. Please budget your time so you get to all of the questions. Keep your answers brief and to the point. You may refer to the following references: Course

### CS 251 Intermediate Programming Methods and Classes

CS 251 Intermediate Programming Methods and Classes Brooke Chenoweth University of New Mexico Fall 2018 Methods An operation that can be performed on an object Has return type and parameters Method with

### Inheritance (Part 2) Notes Chapter 6

Inheritance (Part 2) Notes Chapter 6 1 Object Dog extends Object Dog PureBreed extends Dog PureBreed Mix BloodHound Komondor... Komondor extends PureBreed 2 Implementing Inheritance suppose you want to

### CS61B Lecture #12. Homework 4: will be out tonight sometime. Lateness: Yes, the lateness policy does extend to Project 0.

CS61B Lecture #12 Homework 4: will be out tonight sometime. Lateness: Yes, the lateness policy does extend to Project 0. Test 1: still scheduled for 10 October in class. Today: Exceptions. Modularization

### Introduction to Programming Using Java (98-388)

Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;

### Topic 6: Exceptions. Exceptions are a Java mechanism for dealing with errors & unusual situations

Topic 6: Exceptions Exceptions are a Java mechanism for dealing with errors & unusual situations Goals: learn how to... think about different responses to errors write code that catches exceptions write

### Homework 2: Imperative Due: 5:00 PM, Feb 15, 2019

CS18 Integrated Introduction to Computer Science Fisler Homework 2: Imperative Due: 5:00 PM, Feb 15, 2019 Contents 1 Overview of Generic/Parameterized Types 2 2 Double the Fun with Doubly-Linked Lists

### CS 151. Linked Lists, Recursively Implemented. Wednesday, October 3, 12

CS 151 Linked Lists, Recursively Implemented 1 2 Linked Lists, Revisited Recall that a linked list is a structure that represents a sequence of elements that are stored non-contiguously in memory. We can

### CS61B Lecture #12. Programming Contest: Coming up Saturday 5 October. See the contest announcement page, here.

CS61B Lecture #12 Programming Contest: Coming up Saturday 5 October. See the contest announcement page, here. Lateness: Yes, the lateness policy does extend to Project 0. Test 1: still scheduled for 16

### Midterm Exam (REGULAR SECTION)

Data Structures (CS 102), Professor Yap Fall 2014 Midterm Exam (REGULAR SECTION) October 28, 2014 Midterm Exam Instructions MY NAME:... MY NYU ID:... MY EMAIL:... Please read carefully: 0. Do all questions.

### Day 4. COMP1006/1406 Summer M. Jason Hinek Carleton University

Day 4 COMP1006/1406 Summer 2016 M. Jason Hinek Carleton University today s agenda assignments questions about assignment 2 a quick look back constructors signatures and overloading encapsulation / information

### Declarations and Access Control SCJP tips

Declarations and Access Control www.techfaq360.com SCJP tips Write code that declares, constructs, and initializes arrays of any base type using any of the permitted forms both for declaration and for

### Exception Handling. Sometimes when the computer tries to execute a statement something goes wrong:

Exception Handling Run-time errors The exception concept Throwing exceptions Handling exceptions Declaring exceptions Creating your own exception Ariel Shamir 1 Run-time Errors Sometimes when the computer

### CS/ENGRD 2110 FALL Lecture 7: Interfaces and Abstract Classes

1 CS/ENGRD 2110 FALL 2016 Lecture 7: Interfaces and Abstract Classes http://courses.cs.cornell.edu/cs2110 Announcements 2 Attendance for this week s recitation is mandatory! A2 is due Today Get started

### Pace University. Fundamental Concepts of CS121 1

Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction

### Final Exam. CSC 121 Fall Lecturer: Howard Rosenthal. Dec. 13, 2017

Your Name: Final Exam. CSC 121 Fall 2017 Lecturer: Howard Rosenthal Dec. 13, 2017 The following questions (or parts of questions) in numbers 1-17 are all worth 2 points each. The programs have indicated

### Give one example where you might wish to use a three dimensional array

CS 110: INTRODUCTION TO COMPUTER SCIENCE SAMPLE TEST 3 TIME ALLOWED: 60 MINUTES Student s Name: MAXIMUM MARK 100 NOTE: Unless otherwise stated, the questions are with reference to the Java Programming

### Vendor: Oracle. Exam Code: 1Z Exam Name: Java SE 7 Programmer I. Version: Demo

Vendor: Oracle Exam Code: 1Z0-803 Exam Name: Java SE 7 Programmer I Version: Demo QUESTION 1 A. 3 false 1 B. 2 true 3 C. 2 false 3 D. 3 true 1 E. 3 false 3 F. 2 true 1 G. 2 false 1 Correct Answer: D :

### Class, Variable, Constructor, Object, Method Questions

Class, Variable, Constructor, Object, Method Questions http://www.wideskills.com/java-interview-questions/java-classes-andobjects-interview-questions https://www.careerride.com/java-objects-classes-methods.aspx

### Lecture 2: Java & Javadoc

Lecture 2: Java & Javadoc CS 62 Fall 2018 Alexandra Papoutsaki & William Devanny 1 Instance Variables or member variables or fields Declared in a class, but outside of any method, constructor or block

### GRAMMARS & PARSING. Lecture 7 CS2110 Fall 2013

1 GRAMMARS & PARSING Lecture 7 CS2110 Fall 2013 Pointers to the textbook 2 Parse trees: Text page 592 (23.34), Figure 23-31 Definition of Java Language, sometimes useful: http://docs.oracle.com/javase/specs/jls/se7/html/index.html

### Exception Handling. Run-time Errors. Methods Failure. Sometimes when the computer tries to execute a statement something goes wrong:

Exception Handling Run-time errors The exception concept Throwing exceptions Handling exceptions Declaring exceptions Creating your own exception 22 November 2007 Ariel Shamir 1 Run-time Errors Sometimes

### Writing your own Exceptions. How to extend Exception

Writing your own Exceptions How to extend Exception When would you write your own exception class? When to write your own custom exception is a matter for discussion in your project design team. There

### Why use inheritance? The most important slide of the lecture. Programming in C++ Reasons for Inheritance (revision) Inheritance in C++

Session 6 - Inheritance in C++ The most important slide of the lecture Dr Christos Kloukinas City, UoL http://staff.city.ac.uk/c.kloukinas/cpp (slides originally produced by Dr Ross Paterson) Why use inheritance?

### CSE 331 Software Design & Implementation

CSE 331 Software Design & Implementation Hal Perkins Spring 2017 Exceptions and Assertions 1 Outline General concepts about dealing with errors and failures Assertions: what, why, how For things you believe

### Java Review Outline. basics exceptions variables arrays modulo operator if statements, booleans, comparisons loops: while and for

Java Review Outline basics exceptions variables arrays modulo operator if statements, booleans, comparisons loops: while and for Java basics write a simple program, e.g. hello world http://www2.hawaii.edu/~esb/2017fall.ics211/helloworl

### Title. Java Just in Time. John Latham. February 8, February 8, 2018 Java Just in Time - John Latham Page 1(0/0)

List of Slides 1 Title 2 Chapter 17: Making our own exceptions 3 Chapter aims 4 Section 2: The exception inheritance hierarchy 5 Aim 6 The exception inheritance hierarchy 7 Exception: inheritance hierarchy

### Checked and Unchecked Exceptions in Java

Checked and Unchecked Exceptions in Java Introduction In this article from my free Java 8 course, I will introduce you to Checked and Unchecked Exceptions in Java. Handling exceptions is the process by

### The University of Melbourne Department of Computer Science and Software Engineering Software Design Semester 2, 2003

The University of Melbourne Department of Computer Science and Software Engineering 433-254 Software Design Semester 2, 2003 Answers for Tutorial 7 Week 8 1. What are exceptions and how are they handled

### Lecture 14 CSE11 Fall 2013 For loops, Do While, Break, Continue

Lecture 14 CSE11 Fall 2013 For loops, Do While, Break, Continue General Loops in Java Look at other loop constructions Very common while loop: do a loop a fixed number of times (MAX in the example) int

### INSTRUCTIONS TO CANDIDATES

NATIONAL UNIVERSITY OF SINGAPORE SCHOOL OF COMPUTING MIDTERM ASSESSMENT FOR Semester 2 AY2017/2018 CS2030 Programming Methodology II March 2018 Time Allowed 90 Minutes INSTRUCTIONS TO CANDIDATES 1. This

### Question 1. (2 points) What is the difference between a stream and a file?

CSE 143 Sp03 Midterm 2 Page 1 of 7 Question 1. (2 points) What is the difference between a stream and a file? Question 2. (2 points) Suppose we are writing an online dictionary application. Given a word

### public static boolean isoutside(int min, int max, int value)

See the 2 APIs attached at the end of this worksheet. 1. Methods: Javadoc Complete the Javadoc comments for the following two methods from the API: (a) / @param @param @param @return @pre. / public static

### Do not turn to the next page until the start of the exam.

Principles of Java Language with Applications, PIC20a E. Ryu Winter 2017 Final Exam Monday, March 20, 2017 3 hours, 8 questions, 100 points, 11 pages While we don t expect you will need more space than

### Homework 6. Yuji Shimojo CMSC 330. Instructor: Prof. Reginald Y. Haseltine

Homework 6 Yuji Shimojo CMSC 330 Instructor: Prof. Reginald Y. Haseltine July 21, 2013 Question 1 What is the output of the following C++ program? #include #include using namespace

Exceptions Revised 24-Jan-05 CMPUT 115 - Lecture 4 Department of Computing Science University of Alberta About This Lecture In this lecture we will learn how to use Java Exceptions to handle unusual program

### COMP 213. Advanced Object-oriented Programming. Lecture 17. Exceptions

COMP 213 Advanced Object-oriented Programming Lecture 17 Exceptions Errors Writing programs is not trivial. Most (large) programs that are written contain errors: in some way, the program doesn t do what

### Inheritance (Part 5) Odds and ends

Inheritance (Part 5) Odds and ends 1 Static Methods and Inheritance there is a significant difference between calling a static method and calling a non-static method when dealing with inheritance there

### Chapter 15. Exception Handling. Chapter Goals. Error Handling. Error Handling. Throwing Exceptions. Throwing Exceptions

Chapter 15 Exception Handling Chapter Goals To learn how to throw exceptions To be able to design your own exception classes To understand the difference between checked and unchecked exceptions To learn

### An Introduction to Subtyping

An Introduction to Subtyping Type systems are to me the most interesting aspect of modern programming languages. Subtyping is an important notion that is helpful for describing and reasoning about type

### CSC System Development with Java. Exception Handling. Department of Statistics and Computer Science. Budditha Hettige

CSC 308 2.0 System Development with Java Exception Handling Department of Statistics and Computer Science 1 2 Errors Errors can be categorized as several ways; Syntax Errors Logical Errors Runtime Errors

### CS61B Lecture #11: Examples: Comparable & Reader

CS61B Lecture #11: Examples: Comparable & Reader Java library provides an interface to describe Objects that have a natural order on them, such as String, Integer, BigInteger and BigDecimal: public interface

### Lecture 28. Exceptions and Inner Classes. Goals. We are going to talk in more detail about two advanced Java features:

Lecture 28 Exceptions and Inner Classes Goals We are going to talk in more detail about two advanced Java features: Exceptions supply Java s error handling mechanism. Inner classes ease the overhead of