Deck 11: Advanced Inheritance Concepts
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
Match between columns
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
سؤال
فتح الحزمة
قم بالتسجيل لفتح البطاقات في هذه المجموعة!
Unlock Deck
Unlock Deck
1/66
العب
ملء الشاشة (f)
Deck 11: Advanced Inheritance Concepts
1
Classes from which objects can be instantiated are called constant classes.
False
2
When you assign a variable or constant of one type to a variable of another type, the behavior is called ____.
A) implicit conversion
B) referencing
C) dynamic method binding
D) containing
A) implicit conversion
B) referencing
C) dynamic method binding
D) containing
A
3
When you define a class, if you do not explicitly extend another class, your class is an extension of the ____ class.
A) Object
B) super
C) public
D) abstract
A) Object
B) super
C) public
D) abstract
A
4
An application's ability to select the correct subclass method is known as ____.
A) implementing methods
B) dynamic method binding
C) implicit casting
D) method fixing
A) implementing methods
B) dynamic method binding
C) implicit casting
D) method fixing
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
5
If you create an empty method within an abstract class, the method is abstract even if you do not explicitly use the keyword abstract.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
6
You sometimes create an abstract class only so you can ____ it to another class.
A) link
B) copy
C) extend
D) abstract
A) link
B) copy
C) extend
D) abstract
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
7
Abstract classes and interfaces are similar in that you cannot instantiate concrete objects from either one.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
8
When you create a superclass and one or more subclasses, each object of each subclass is a subclass object.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
9
A(n) ____ class is a class that you create only to extend from.
A) abstract
B) inheritance
C) parent
D) final
A) abstract
B) inheritance
C) parent
D) final
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
10
The Object class ____ method converts an Object into a String that contains information about the Object .
A) equals()
B) setType()
C) toString()
D) speak()
A) equals()
B) setType()
C) toString()
D) speak()
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
11
The java.lang package contains fundamental classes and is imported automatically each time a program is written.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
12
A(n) ____ is not an object, but it points to a memory address.
A) abstract class
B) reference
C) extend
D) interface
A) abstract class
B) reference
C) extend
D) interface
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
13
A class that will be placed in a nondefault package for others to use must be private .
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
14
If you attempt to instantiate an object from an abstract class, you receive an error message from the compiler that you have committed a(n) ____.
A) LogicError
B) InstantiationError
C) SyntaxError
D) ObjectError
A) LogicError
B) InstantiationError
C) SyntaxError
D) ObjectError
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
15
When you create a class that uses an interface, you include the keyword extends .
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
16
Instead of using the automatic toString() method with your classes, it is usually more useful to write your own ____ version of the toString() method that displays some or all of the data field values for the object with which you use it.
A) overloaded
B) protected
C) static
D) condensed
A) overloaded
B) protected
C) static
D) condensed
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
17
While a class can inherit from multiple abstract superclasses, it implement only one interface.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
18
It is common to create an interface when you want a class to implement behavior from more than one parent.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
19
Which of the following statements creates an array of three Animal references?
A) Animal[] ref = new Animal(3);
B) Animal[] new = ref Animal[3];
C) Animal[] animalRef = new Animal[3];
D) Animal[] ref = extend Animal[3];
A) Animal[] ref = new Animal(3);
B) Animal[] new = ref Animal[3];
C) Animal[] animalRef = new Animal[3];
D) Animal[] ref = extend Animal[3];
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
20
Java does not allow a class to inherit directly from two or more parents.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
21
When you show abstract classes and methods in class diagrams, their names appear in ____.
A) bold
B) all caps
C) italics
D) blue
A) bold
B) all caps
C) italics
D) blue
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
22
When you create a new subclass in Java, neither the superclass source code nor the superclass ____ is changed.
A) bytecode
B) object
C) argument
D) possession
A) bytecode
B) object
C) argument
D) possession
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
23
Classes, such as the String class, have their own equals() methods that overload the ____ class method.
A) Object
B) Public
C) Abstract
D) Child
A) Object
B) Public
C) Abstract
D) Child
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
24
Which of the following is NOT true regarding abstract methods?
A) Abstract methods must be implemented in child classes.
B) Abstract methods have no body.
C) Abstract methods use the abstract keyword in declarations.
D) Abstract methods are inherited by their children.
A) Abstract methods must be implemented in child classes.
B) Abstract methods have no body.
C) Abstract methods use the abstract keyword in declarations.
D) Abstract methods are inherited by their children.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
25
When you create a class and use the implements clause to implement an interface but fail to code one of the interface's methods, the compiler error generated indicates that you must declare your class to be ____.
A) abstract
B) static
C) public
D) related
A) abstract
B) static
C) public
D) related
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
26
If Java did not allow you to ____ classes, you would need to create every part of a program from scratch.
A) extend
B) override
C) abstract
D) import
A) extend
B) override
C) abstract
D) import
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
27
The Object class equals() method returns a boolean value indicating whether the objects are equal. This equals() method considers two objects to be equal only if they have the same ____________________ .
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
28
If you provide an empty method within an abstract class, the method is an abstract method even if you do not explicitly use the keyword ____________________ when defining the method.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
29
A(n) ____ looks much like a class, except that all of its methods (if any) are implicitly public and abstract.
A) hash code
B) package
C) collision
D) interface
A) hash code
B) package
C) collision
D) interface
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
30
If you do not specify a package for a class, it is placed in an unnamed ____ package.
A) system
B) language
C) default
D) general
A) system
B) language
C) default
D) general
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
31
____ compress the data they store, which reduces the size of archived class files.
A) Dynamic method bindings
B) JAR files
C) Type-import-on-demand declarations
D) Interfaces
A) Dynamic method bindings
B) JAR files
C) Type-import-on-demand declarations
D) Interfaces
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
32
When you create a number of classes that inherit from each other, as well as multiple interfaces that you want to implement with these classes, you often will find it convenient to place these related classes in a(n) ____________________.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
33
The Object class equals() method returns a(n) ____ value indicating whether the objects are equal.
A) int
B) equals
C) null
D) boolean
A) int
B) equals
C) null
D) boolean
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
34
In other programming languages, such as C++, abstract classes are known as ____________________ classes.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
35
The capability to inherit from more than one class is called ____.
A) multiple inheritance
B) collision
C) polyinheritance
D) dynamic method binding
A) multiple inheritance
B) collision
C) polyinheritance
D) dynamic method binding
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
36
In the Java programming language, a package or class library is often delivered to users as a(n) ____________________ file.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
37
The ____ method is useful in debugging a program because it can be used to display and examine values.
A) finalize()
B) toString()
C) notify()
D) equals()
A) finalize()
B) toString()
C) notify()
D) equals()
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
38
Java's Object class contains a public method named ____ that returns an integer representing the hash code.
A) length()
B) hashCode()
C) hcode()
D) toString()
A) length()
B) hashCode()
C) hcode()
D) toString()
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
39
____ is a calculated number that is used to uniquely identify an object.
A) Method binding
B) A hash code
C) Implicit conversion
D) Ad-hoc polymorphism
A) Method binding
B) A hash code
C) Implicit conversion
D) Ad-hoc polymorphism
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
40
When a class both extends and implements, by convention the ____ clause follows the extends clause in the class header.
A) extends
B) new
C) implements
D) if
A) extends
B) new
C) implements
D) if
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
41
Match between columns
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
42
public interface FindTheError
{
void firstMethod(int anIntNum)
{
System.out.println("Did you find the error?");
}
}
What is the problem with the above interface? How would you correct the interface?
{
void firstMethod(int anIntNum)
{
System.out.println("Did you find the error?");
}
}
What is the problem with the above interface? How would you correct the interface?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
43
Why do many programmers consider multiple inheritance to be a difficult concept?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
44
public class CarReference
{
public static void main(String[] args)
{
Car carRef;
----Code here---
carRef.color();
}
}
Suppose you have created a Car class and Honda and Ford subclasses. Using the above code, complete the indicated statement to create a new Honda object that is assigned to the Car reference.
{
public static void main(String[] args)
{
Car carRef;
----Code here---
carRef.color();
}
}
Suppose you have created a Car class and Honda and Ford subclasses. Using the above code, complete the indicated statement to create a new Honda object that is assigned to the Car reference.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
45
When you create classes for others to use, why would you not want to provide the users with your source code in the files with .java extensions?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
46
Describe the two method types programmers of an abstract class can include.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
47
When a superclass is abstract, you cannot instantiate objects of a superclass. How can you use a superclass abstract object?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
48
Compare and contrast abstract classes and interfaces.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
49


The equals() method returns a boolean value indicating whether two objects are equal. Using the above code, will the two BankAccount objects be equal? Explain why or why not.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
50
public class Animal
{
}
public class Animal extends Object
{
}
The two class declarations above have identical outcomes. Explains why this is the case.
{
}
public class Animal extends Object
{
}
The two class declarations above have identical outcomes. Explains why this is the case.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
51
What is the toString() method used for and how is it used?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
52
What is an abstract class? Give an example and explain how it works.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
53
How is the Object class equals() method implemented?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
54
Give an example of how you can create an interface to have a class implement behavior from more than one parent.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
55
What are the advantages to creating a useful, extendable superclass?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
56
What is dynamic method binding and why is it used?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
57

The AnimalReference application shown above contains a generic Animal reference variable into which you can assign concrete Animal objects. Explain how this example uses polymorphism and why it is important.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
58
public abstract class Car
{
private String model;
public abstract void color();
public String getName()
{
return model;
}
public void setName(String carModel)
{
model = carModel;
}
}
Using the code above, would it be possible to create a class in which you declare a Car object with the statement Car myCar = new Car("Honda"); ?
Explain why or why not.
{
private String model;
public abstract void color();
public String getName()
{
return model;
}
public void setName(String carModel)
{
model = carModel;
}
}
Using the code above, would it be possible to create a class in which you declare a Car object with the statement Car myCar = new Car("Honda"); ?
Explain why or why not.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
59
public abstract class Car
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
public class Honda extends Car
{
public void color()
{
System.out.println("red");
}
}
public class Ford extends Car
{
public void color()
{
System.out.println("blue");
}
}
public class MyCars
{
public static void main(String[] args)
{
Honda myHonda = new Honda();
Ford myFord = new Ford();
myHonda.setModel("My Honda is ");
myFord.setModel("My Ford is ");
System.out.print(myHonda.getModel());
myHonda.color();
System.out.print(myFord.getModel());
myFord.color();
}
}
In the above code, the myHonda.getModel() and myHonda.color() method calls produce different output from when the same methods are used with myFord . Explain why this is the case.
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
public class Honda extends Car
{
public void color()
{
System.out.println("red");
}
}
public class Ford extends Car
{
public void color()
{
System.out.println("blue");
}
}
public class MyCars
{
public static void main(String[] args)
{
Honda myHonda = new Honda();
Ford myFord = new Ford();
myHonda.setModel("My Honda is ");
myFord.setModel("My Ford is ");
System.out.print(myHonda.getModel());
myHonda.color();
System.out.print(myFord.getModel());
myFord.color();
}
}
In the above code, the myHonda.getModel() and myHonda.color() method calls produce different output from when the same methods are used with myFord . Explain why this is the case.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
60
When you create a useful, extendable superclass, you and other future programmers gain what advantages?
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
61

An array can be created to reserve space for references to objects. Using the code above, explain how an array of superclass references can hold subclass references.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
62

The shaded header of the talkingAnimal() method accepts any type of Animal argument. Explain how this is possible.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
63
public abstract class Car
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
public class Honda extends Car
{
public void color()
{
System.out.println("red");
}
}
public class Ford extends Car
{
public void color()
{
System.out.println("blue");
}
}
public class MyCars
{
public static void main(String[] args)
{
Honda myHonda = new Honda();
Ford myFord = new Ford();
myHonda.setModel("My Honda is ");
myFord.setModel("My Ford is ");
System.out.print(myHonda.getModel());
myHonda.color();
System.out.print(myFord.getModel());
myFord.color();
}
}
Using the above code, describe the output that will appear when the program is executed.
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
public class Honda extends Car
{
public void color()
{
System.out.println("red");
}
}
public class Ford extends Car
{
public void color()
{
System.out.println("blue");
}
}
public class MyCars
{
public static void main(String[] args)
{
Honda myHonda = new Honda();
Ford myFord = new Ford();
myHonda.setModel("My Honda is ");
myFord.setModel("My Ford is ");
System.out.print(myHonda.getModel());
myHonda.color();
System.out.print(myFord.getModel());
myFord.color();
}
}
Using the above code, describe the output that will appear when the program is executed.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
64
public abstract class Car
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
The above code creates a generic abstract class named Car with an abstract color() method. Using the code below, fill in the indicated statements in order to create a Honda class that extends Car .
public class --Code here-- extends --Code here--
{
public void --Code here--
{
System.out.println("I like your red car!");
}
}
{
private String model;
public abstract void color();
public String getModel()
{
return model;
}
public void setModel(String modelName)
{
model = modelName;
}
}
The above code creates a generic abstract class named Car with an abstract color() method. Using the code below, fill in the indicated statements in order to create a Honda class that extends Car .
public class --Code here-- extends --Code here--
{
public void --Code here--
{
System.out.println("I like your red car!");
}
}
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
65


The code above provides an example of an interface class. Explain the purpose and advantages of creating interfaces that store related constants.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck
66
public abstract class Shape
{
private int length;
private int width;
private int height;
----Code here----
}
Using the above code, create the statement in the place indicated that will create an abstract calculateArea() method in the abstract Shape class.
{
private int length;
private int width;
private int height;
----Code here----
}
Using the above code, create the statement in the place indicated that will create an abstract calculateArea() method in the abstract Shape class.
فتح الحزمة
افتح القفل للوصول البطاقات البالغ عددها 66 في هذه المجموعة.
فتح الحزمة
k this deck