AP Notes, Outlines, Study Guides, Vocabulary, Practice Exams and more!

ap Flashcards

Terms : Hide Images
8719998678Top-down developmenta design in which you first define the general structure of the program, laying out high-level classes, and then refine the design of each class. You start designing the program in large pieces and then break down the pieces into smaller pieces.0
8720002307Bottom-up developmentidentify lower-level methods that you can write and then put together to form a bigger program. classes closer to the top of the hierarchy are more abstract, the properties and methods of their objects are more general, and they can have constructors and methods. Methods in this class can be abstract and not have any code.1
8720006038Abstract classclasses closer to the top of the hierarchy are more abstract, the properties and methods of their objects are more general, and they can have constructors and methods. Methods in this class can be abstract and not have any code.2
8720012867Specificationsdetailed description of what a piece of software should accomplish and how it should behave and interact with the user. These are the directions given to a the programmer so that he knows what the code should do. .3
8720017630Iterationthe repetition of a process. This is usually done using loops or recursion4
8720026650Encapsulationthe idea that each object (in Object Oriented Programming) protects and manages its own information. It's the idea that objects travel with their fields and behaviors. This forces the user to adhere to the abstraction principle--the idea that you can use a method someone else wrote in your code without know how the method works.5
8720029512Run-time errorsoccur when an index value is invalid, the program throws an out of bounds exception, endless loop, stack over flow, or the program crashes for another reason6
8720033576Compilation errorswhen the syntax is wrong, a method is can't be found, or a method isn't called correctly7
8720037429Logic errorswhen a program runs but produces the wrong output8
8720045520Inheritanceallows the programmer to state that one class extends another class, inheriting its features.9
8720054472Object-oriented programminga programming methodology based on designing the program as a world of interacting objects arranged in hierarchies of classes and using encapsulation and polymorphism.10
8720070708Abstraction: The idea that users of a class should focus on the specifications and not on the implementation of the class they are using. In other words, if you use the String substring method, you just have to worry about using the method and not how it works--meaning the details of how it works don't matter to the person using the method.11
8720088409Concrete: a class in which all the methods are defined. Instance variables: describes the objects attributes-the current state of an object of constructors. This is another way to refer to fields.12
8720073761Data Structure: a way of organizing data combined with methods of accessing and manipulating the data.13
8720077215Override: when a subclass contains a method with the same signature as a method in its parent class14
8720080042Overload: when a class has two methods with the same return type and names BUT with different parameters15
8720082576Binary search: uses divide and conquer method for quickly finding a target value in a sorted array.16
8720085408Accessors: these types of methods return values of instance variables.17
8720088410Modifiers: a public method that sets a new value of an instance variable. Often called setter methods.18
8720093461Null: is a Java reserved word that stands for a reference with a value of nothing.19
8720091113Class hierarchy: exist to allow reuse of code from higher classes in the lower classes without duplication and to promote a more logical design. Instance methods: These are not static methods. These methods are called for a particular object--often the object's name and dot are used as a prefix in a call.20
8720096413State: another name for field or attribute21
8720099646Polymorphism: a mechanism that assures that the correct method is called for an object disguised as a more generic type. When the behavior of a method is determined at run-time. It's the idea that we can refer to objects of different but related types in the same way. Information hiding: making all instance variables and helper methods that are used only inside the class private. The clients of a class can then use that class only through getter/setter methods.22
8720102244Driver Program: a program whose sole purpose is to test a given method or class. (You might use a driver program as you are writing a bottom-up program.) The purpose of the driver is to test the class fully before incorporating it as an object in a new class. When each independent class is working, classes that depend on others are implemented and tested and so on. Design flaws can be fixed at each stage of the development. *Stubs*23
8720102245Composition: HAS-A relationship. E.g. X HAS-A Y means that Y is a data member (instance variable) of X .24
8720105045Independent ClassesIndependent classes are fully implemented and tested before being incorporated into the overall project. They don't use other classes of the program in its code.25
8720110781Interface: An interface is a class with method declarations that have no implementations. An interface cannot be inherited. It is implemented in other classes. An interface can add behavior to a class, but it does not provide hierarchy for the class. The methods defined in an interface are by default public and abstract. Therefore, the methods in an interface are only declarations followed by a semicolon. It cannot have a constructor or fields and no code at all-just headings for methods. It can have public static final variables. The finals must be given their values in the interface26

Need Help?

We hope your visit has been a productive one. If you're having any problems, or would like to give some feedback, we'd love to hear from you.

For general help, questions, and suggestions, try our dedicated support forums.

If you need to contact the Course-Notes.Org web experience team, please use our contact form.

Need Notes?

While we strive to provide the most comprehensive notes for as many high school textbooks as possible, there are certainly going to be some that we miss. Drop us a note and let us know which textbooks you need. Be sure to include which edition of the textbook you are using! If we see enough demand, we'll do whatever we can to get those notes up on the site for you!