Reviewed by Editorial Team
The ProProfs editorial team is comprised of experienced subject matter experts. They've collectively created over 10,000 quizzes and lessons, serving over 100 million users. Our team includes in-house content moderators and subject matter experts, as well as a global network of rigorously trained contributors. All adhere to our comprehensive editorial guidelines, ensuring the delivery of high-quality content.
Learn about Our Editorial Process
| By Bing22
B
Bing22
Community Contributor
Quizzes Created: 3 | Total Attempts: 4,724
| Attempts: 1,619 | Questions: 23
Please wait...
Question 1 / 23
0 %
0/100
Score 0/100
1. Superclass methods with this level of access cannot be called from subclasses.

Explanation

Superclass methods with private access cannot be called from subclasses. The private access modifier restricts access to only within the same class, so subclasses cannot access these methods.

Submit
Please wait...
About This Quiz
Java Quizzes & Trivia

The 'java ch9' quiz assesses understanding of Java inheritance concepts, including superclass\/subclass relationships, the 'is-a' relationship, and the use of 'super' and 'protected' keywords. It is ideal for learners aiming to enhance their Java OOP skills.

Personalize your quiz and earn a certificate with your name on it!
2. 9.4.2 Q1: To avoid duplicating code, use ________, rather than ________.

Explanation

Inheritance allows for code reuse by creating a new class that inherits the properties and methods of an existing class. This avoids duplicating code by allowing the new class to inherit the functionality of the existing class. On the other hand, the "copy-and-paste" approach involves manually copying and pasting code from one place to another, which can lead to code duplication and make maintenance and updates more difficult. Therefore, using inheritance instead of the "copy-and-paste" approach is recommended to avoid duplicating code.

Submit
3.  Every class in Java, except ________, extends an existing class.

Explanation

Every class in Java, except Object, extends an existing class. The Object class is the root of the class hierarchy in Java and serves as the base class for all other classes. This means that all other classes directly or indirectly inherit from the Object class. Therefore, the correct answer is b. Object.

Submit
4. Which superclass members are inherited by all subclasses of that superclass?

Explanation

All subclasses of a superclass inherit the protected instance variables and methods of that superclass. Protected members are accessible within the same package and also by subclasses of the superclass, regardless of the package they are in. This allows subclasses to access and use the protected members inherited from the superclass. Private instance variables and methods are not inherited by subclasses, as they are only accessible within the class they are declared in. Private constructors are also not inherited, as constructors are not inherited at all.

Submit
5.  Which of the following is not a superclass/subclass relationship?

Explanation

The relationship between a sailboat and a tugboat is not a superclass/subclass relationship because they are not related in terms of inheritance or specialization. A superclass/subclass relationship implies that one class is a more specific version or specialization of another class. In this case, a sailboat and a tugboat are different types of boats with different purposes and characteristics, rather than one being a specialized version of the other.

Submit
6. Which of the following keywords allows a subclass to access a superclass method even when the subclass has overridden the superclass method?

Explanation

The keyword "super" allows a subclass to access a superclass method even when the subclass has overridden the superclass method. By using "super" keyword, the subclass can invoke the superclass method and perform additional operations or modifications on it. This is useful when the subclass wants to extend the functionality of the superclass method without completely overriding it.

Submit
7. Overriding a method differs from overloading a method because:

Explanation

Overriding a method means providing a different implementation of a method in a subclass, while keeping the same method signature as the method in the superclass. In other words, the overridden method in the subclass has the same name, return type, and parameters as the method in the superclass. On the other hand, overloading a method means having multiple methods with the same name but different parameters in the same class. Therefore, the correct answer is b. Overridden methods have the same signature.

Submit
8.  Inheritance is also known as the

Explanation

The correct answer is "is-a" relationship because inheritance in object-oriented programming represents a relationship between classes where one class inherits the properties and behaviors of another class. This relationship implies that the inheriting class is a specialized version of the inherited class, indicating an "is-a" relationship.

Submit
9. Using the protected keyword gives a member:

Explanation

The protected keyword in Java gives a member package access, meaning that it can be accessed by any class within the same package. This means that the member is not accessible to classes in different packages, but can be accessed by any class within the same package, including subclasses.

Submit
10. 9.6 Q1: Which of the following statements is (are) true?
A.    We can use inheritance to customize existing software.
B.    A superclass specifies commonality.
C.    A superclass can be modified without modifying subclasses
D.    A subclass can be modified without modifying its superclass.

Explanation

Inheritance allows us to customize existing software by creating subclasses that inherit properties and behaviors from a superclass. A superclass specifies commonality, meaning it contains shared properties and behaviors that can be inherited by subclasses. A superclass can be modified without affecting its subclasses, as long as the modifications do not change the inherited properties and behaviors. Similarly, a subclass can be modified without modifying its superclass, as long as the modifications are specific to the subclass and do not affect the inherited properties and behaviors. Therefore, all of the statements A, B, and D are true.

Submit
11. 9.4.5 Q1: private fields of a superclass can be accessed in a subclass

Explanation

Private fields of a superclass cannot be accessed directly in a subclass because they are not visible outside the class. However, they can be accessed indirectly by calling public or protected methods declared in the superclass. These methods can provide access to the private fields by returning their values or modifying them. Therefore, option b is the correct answer.

Submit
12. 9.7 Q2: The default equals implementation determines:

Explanation

The default equals implementation in Java determines whether two references refer to the same object in memory. It checks if the memory addresses of the two objects are the same, indicating that they are the same object. It does not compare the values of the instance variables or the types of the objects.

Submit
13. 9.4.3 Q2: Which of the following is the superclass constructor call syntax?

Explanation

The correct answer is b. This is because when calling a superclass constructor, the syntax is "keyword super" followed by a set of parentheses containing the superclass constructor arguments. This allows the subclass to pass any necessary arguments to the superclass constructor. The other options are not the correct syntax for calling a superclass constructor.

Submit
14. 9.8 Q2: Which method changes the text the label displays?

Explanation

The method that changes the text the label displays is "setText". This method allows the programmer to update the text content of a label component in a graphical user interface. It takes a string as an argument and replaces the current text with the new specified text.

Submit
15. : An advantage of inheritance is that:

Explanation

Inheritance allows objects of a subclass to be treated like objects of their superclass. This means that a subclass can inherit the properties and behaviors of its superclass, allowing it to access and use the same methods and variables. This promotes code reuse and allows for more efficient and organized programming, as subclasses can inherit and build upon the functionality of their superclass without having to redefine it.

Submit
16.  Which of the following statements is false?
 

Explanation

The given statement "A superclass object is a subclass object" is false. In object-oriented programming, a superclass is a class from which other classes, called subclasses, inherit properties and methods. A subclass can have additional properties and methods that are not present in the superclass. Therefore, a superclass object cannot be a subclass object because it does not have the additional properties and methods defined in the subclass.

Submit
17. 9.5 Q1: When a subclass constructor calls its superclass constructor, what happens if the superclass’s constructor does not assign a value to an instance variable?

Explanation

If the superclass's constructor does not assign a value to an instance variable, the instance variable will be initialized to its default value. In Java, instance variables are automatically assigned default values if no explicit value is given. For example, numeric types are initialized to 0, boolean types are initialized to false, and object references are initialized to null. Therefore, the program will compile and run without any errors because the instance variables will still have valid default values.

Submit
18. Consider the classes below, declared in the same file:
class A
{
   int a;
   public A()
   {
      a = 7;
   }
}

class B extends A
{
   int b;
   public B()
   {
b = 8;
   }    
}

Which of the statements below is false?

Explanation

Inheritance allows a reference of a superclass type to refer to an object of a subclass type. Therefore, a reference of type A can be treated as a reference of type B. This is known as upcasting.

Submit
19. 9.8 Q1: Class ________ represents an image that can be displayed on a JLabel.

Explanation

The correct answer is c. ImageIcon. The ImageIcon class represents an image that can be displayed on a JLabel. It is used to create an icon from an image file and can be set as the icon for a JLabel component.

Submit
20. 9.6 Q2: Which of the following is an example of a functionality that should not be “factored out” to a superclass?

Explanation

This functionality should not be factored out to a superclass because it is specific to a certain group of animals (mammals) and does not apply to all animals in general. Factoring it out to a superclass would result in incorrect behavior for mammals, as they do not lay eggs.

Submit
21. 9.4.4 Q2: Which statement is true when a superclass has protected instance variables?

Explanation

When a superclass has protected instance variables, it means that these variables can be accessed by the subclass. This allows the subclass object to assign invalid values to the superclass's instance variables, potentially leaving the object in an inconsistent state. Additionally, subclass methods are more likely to be written in a way that depends on the superclass's data implementation, meaning that any changes to the superclass's implementation may require modifications to all the subclasses. Therefore, all of the statements mentioned in options a, b, and c are true, making option d the correct answer.

Submit
22. 9.7 Q1: The default implementation of method clone of Object performs a ________.

Explanation

The default implementation of the clone() method in the Object class performs a shallow copy. A shallow copy creates a new object and copies the non-static fields of the original object to the new object. However, if the field is a reference type, the reference is copied, not the actual object. This means that both the original object and the cloned object will refer to the same objects. Any changes made to the shared objects will be reflected in both the original and cloned objects.

Submit
23. Failure to prefix the superclass method name with the keyword super and a dot (.) separator when referencing the superclass’s method causes ________.

Explanation

When referencing the superclass's method, if the keyword "super" and a dot (.) separator are not used to prefix the superclass method name, it will cause infinite recursion. This means that the method will keep calling itself indefinitely, leading to a stack overflow error.

Submit
View My Results

Quiz Review Timeline (Updated): Mar 21, 2023 +

Our quizzes are rigorously reviewed, monitored and continuously updated by our expert board to maintain accuracy, relevance, and timeliness.

  • Current Version
  • Mar 21, 2023
    Quiz Edited by
    ProProfs Editorial Team
  • Dec 12, 2010
    Quiz Created by
    Bing22
Cancel
  • All
    All (23)
  • Unanswered
    Unanswered ()
  • Answered
    Answered ()
Superclass methods with this level of access cannot be called from...
9.4.2 Q1: To avoid duplicating code, use ________, rather than...
 Every class in Java, except ________, extends an existing class.
Which superclass members are inherited by all subclasses of that...
 Which of the following is not a superclass/subclass...
Which of the following keywords allows a subclass to access a...
Overriding a method differs from overloading a method because:
 Inheritance is also known as the
Using the protected keyword gives a member:
9.6 Q1: Which of the following statements is (are)...
9.4.5 Q1: private fields of a superclass can be accessed in a subclass
9.7 Q2: The default equals implementation determines:
9.4.3 Q2: Which of the following is the superclass constructor call...
9.8 Q2: Which method changes the text the label displays?
: An advantage of inheritance is that:
 Which of the following statements is false? 
9.5 Q1: When a subclass constructor calls its superclass constructor,...
Consider the classes below, declared in the same file:class A...
9.8 Q1: Class ________ represents an image that can be displayed on a...
9.6 Q2: Which of the following is an example of a functionality that...
9.4.4 Q2: Which statement is true when a superclass has protected...
9.7 Q1: The default implementation of method clone of Object performs...
Failure to prefix the superclass method name with the keyword super...
Alert!

Advertisement