Study Guide for CS 303E Test 3 (Summer 2008) Here are some specific topics that you will be tested on: * Use of String and StringBuffer in solutions of problems * Explain and compose regular expressions * Text File input and output * Definition of terms in OOP: abstraction, encapsulation, information hiding, inheritance, polymorphism * Explanation of terms like: static, final, abstract, overriding, overloading, hiding (shadowing), runtime (late) binding * UML diagram to illustrate inheritance hierarchy * Write code to set up an inheritance hierarchy. Study programming assignment 9. * Explain and illustrate polymorphism through inheritance and polymorphism through interfaces. * Given pieces of code involving objects decide whether they are legal or not and explain why. * Given a method you should be able to determine its output for a given input parameter. The method could be recursive or non-recursive. * Write a method given the specifications. Study the array programming problems given in Study Guide 2. * Given a set of pre-defined methods, write code using them. * Extra Credit: You will be given an algorithm in English and you will have to write the code in Java. There will be no surprises in the test. It will be strictly based on the topics mentioned in this study guide. The best way to prepare yourself for the test is to write short programs that fulfill the requirements of the bulleted items.