CPSC 2150 - Exam 2 Terms || Already Graded A+.
Interface correct answers a place to specify a contract; provides a separation of concerns between class users and implementers; express some coherent concept like stacks, queues, sets and provides the methods and contracts for each How are Lists related to interfaces? correct answers Lists are interfaces in Java. It gives the contracts/methods that exist for all Lists, such as ArrayList, which is a class that implements this interface. ArrayList has all of the methods specified in the List interface. What are the two biggest reasons to use interfaces? correct answers Information hiding and separation of concerns Why are classes ineffective at information hiding compared to interfaces? correct answers Classes don't hide well; users are still burdened to look at all the class details. When classes change, user understanding is affected, and Javadocs/contracts provide only a partial solution because the explanations of public class methods may refer to private data/code. Why are classes ineffective at providing solutions to general problems? correct answers Classes provide SPECIFIC solutions to a SPECIFIC problem. It has private data and methods based on this private data. Why is it beneficial to have multiple classes implement the same interface? correct answers Performance trade-offs (speed vs. memory efficiency); alternative class implementation offers more choice to users that allow users to adapt to their needs based on the interface and classes within that interface If we have an interface Grid, and two classes GridMem and GridFast that implement Grid, how would calling myGdA() work? correct answers Since GridMem and GridFast have the same list of methods, myGdA() will work because methodA() is defined for both classes through the interface. It doesn't matter that our classes are different here since the code is based on the interface. Write Java syntax for an interface Salaried that 1) has a setSalary function that takes in a BigDecimal and returns nothing, and 2) has a getSalary function with no parameters of type BigDecimal. Then, explain the two features that a class inheriting Salaried must have to satisfy the interface. correct answers public interface Salaried{ void setSalary(BigDecimal d); BigDecimal getSalary(); } Two features include 1) matching signatures (checked by compiler) and 2) matching behaviors (up to programmer). What are the three main qualities necessary to declaring an interface? correct answers 1) Keyword "interface" replaces "class" 2) Methods have no body 3) There are no constructors
Escuela, estudio y materia
- Institución
- CPSC 2150
- Grado
- CPSC 2150
Información del documento
- Subido en
- 25 de marzo de 2024
- Número de páginas
- 8
- Escrito en
- 2023/2024
- Tipo
- Examen
- Contiene
- Preguntas y respuestas
Temas
-
interface
Documento también disponible en un lote