This document provides naming conventions and instructions for an assignment on exception handling in Java. It includes:
- Naming the project and packages based on the lab number and student ID.
- Eight programming tasks to demonstrate different aspects of exception handling in Java, including catching superclass and subclass exceptions, catching multiple exception types, order of catch blocks, constructor failures, rethrowing exceptions, and catching exceptions in outer scopes.
This document provides naming conventions and instructions for an assignment on exception handling in Java. It includes:
- Naming the project and packages based on the lab number and student ID.
- Eight programming tasks to demonstrate different aspects of exception handling in Java, including catching superclass and subclass exceptions, catching multiple exception types, order of catch blocks, constructor failures, rethrowing exceptions, and catching exceptions in outer scopes.
Tên Môn học/Course Name: Fundamentals Of Computing 1 Năm học/Academic Year: 2019-2020 Học kỳ/Semester: II Khoa hay Viện/Faculty Name: International School
Project naming convention
Create a project named: Lab09_Exception_ID
With ID stands for student’s identify Ex: If your student’s ID is 9600278, so your project name will be: Lab09_Exception_9600278 Pay attention to “_” (underscore) Package naming convention: Each project has one or many packages.
Each package has a specific name
Each Lab has one package name. Remember to name the packages as follow: labNo_ID With No is a number of each lab, ID stands for student’s identify Ex: lab01_9600278, lab02_9600278 Remember to use lowercase l Class naming convention (Files): Each package has one or many classes
Each class has a specific name
Remember to name the classes (classname) as follow: LabNo_ID and TestLabNo_ID
With No is a number of each lab, ID stands for student’s identify
Ex: Lab01_9600278, TestLab01_9600278, Lab02_9600278, TestLab02_9600278 Remember to capitalize each word L, T and L 1. (Catching Exceptions with Superclasses) Use inheritance to create an exception superclass (called ExceptionA) and exception subclasses ExceptionB and ExceptionC, where ExceptionB inherits from ExceptionA and ExceptionC inherits from ExceptionB. Write a program to demonstrate that the catch block for type ExceptionA catches exceptions of types ExceptionB and ExceptionC. 2. (Catching Exceptions Using Class Exception) Write a program that demonstrates how various exceptions are caught with catch ( Exception exception ) 3. This time, define classes ExceptionA (which inherits from class Exception) and ExceptionB (which inherits from class ExceptionA). In your program, create try blocks that throw exceptions of types ExceptionA, ExceptionB, NullPointerException and IOException. All exceptions should be caught with catch blocks specifying type Exception. 4. (Catch exception in main) Create three new types of exceptions. Write a class with a method that throws all three. In main( ), call the method but only use a single catch clause that will catch all three types of exceptions. 5. (Order of catch Blocks) Write a program that shows that the order of catch blocks is important. If you try to catch a superclass exception type before a subclass type, the compiler should generate errors. 6. (Constructor Failure) Write a program that shows a constructor passing information about constructor failure to an exception handler. Define class SomeException, which throws an Exception in the constructor. You program should try to create an object of type SomeException, and catch the exception that is thrown from the constructor. 7. (Rethrowing Exceptions) Write a program that illustrates rethrowing an exception. Define methods someMethod and someMethod2. Method someMethod2 should initially throw an exception. Method someMethod should call someMethod2, catch the exception and rethrow it. Call someMethod from method main, and catch the rethrown exception. Print the stack trace of this exception. 8. (Catching Exceptions Using Outer Scopes) Write a program showing that a method with its own Try block does not have to catch every possible error generated within the try. Some exceptions can slip through to, and be handled in, other scopes.