Objects
Suppose you have a class called Elevator. The Elevator class has a method called goingUp, partially defined below public boolean goingUp() { // code omitted } Which of the following statements correctly stores the return value of goingUp when it is called on the Elevator object called hotel?
boolean up = hotel.goingUp();
Which of the following methods is implemented correctly with respect to the method's return type?
public String getColor() { return "Red"; }
Suppose there is a class called Student. One of the methods is given below. It sets the instance variable isHonors to the parameter value. public void setHonorStatus(boolean status) { isHonors = status; } Using the Student object called karel, which of the following is the correct way to set karel's honor status to true?
karel.setHonorStatus(true);
What method must a class implement in order to concatenate an object of the class with a String object?
toString
Which of the following describes the difference between static methods and instance methods?
Static methods can be called without using an object while instance methods need to be called on an object
Which of the following correctly calls the method addFiveMinutes on an object of the Timer class called kitchenTimer?
kitchenTimer.addFiveMinutes()
Suppose the class Timer has a method called startTime that prints out the starting time of the Timer.Which of the following correctly uses this method to print out the start time of a Timer object called laundry?
laundry.startTime();
What is the importance of the null value?
null allows a reference variable to be empty and not hold any memory address.
Refer to the Card class shown below. public class Card { private String suit; private int value; //13 values for each suit in deck (0 to 12) public Card (String cardSuit, int cardValue) { /* implementation */ } // Rest of the class goes here } Which of the following is the correct /* implementation */ code for the constructor in the Card class?
suit = cardSuit; value = cardValue;
Which of the following best describes the relationship between a class and an object?
A class definition specifies the attributes and behavior of every object that will be made.
What range of numbers would be generated by using int num = (int) (Math.random() * 501);
0 - 500
What would this program print? double sideLength = Math.sqrt(64); double height = Math.pow(3, 2); double difference = Math.abs(sideLength - height); System.out.println(difference);
1.0
What is the output of the following code snippet? String forest = "Amazon Rainforest"; System.out.println(forest.indexOf('a')); System.out.println(forest.indexOf('g')); System.out.println(forest.indexOf('n'));
2 -1 5
What is a constructor in Java?
A constructor allows us to create a new instance of a class, usually initializing instance variables.
What would be printed by the following code snippet? String lastName = "Vu"; String otherLastName = "Lopez"; int comparison = lastName.compareTo(otherLastName); System.out.println(comparison);
A positive number because "Vu" comes after "Lopez" in lexicographical order.
What is an instance method?
An instance method is a piece of code called on a specific instance (an object) of the class. It is called with a receiver object.
What is an object in Java?
An object is something that contains both state and behavior.
What does it mean to be a client of a class?
Being a client of a class means that we can use its methods and functionality without necessarily understanding how it works.
Which of the following is NOT a valid way to overload this constructor? For brevity, only the signature is given. Pineapple(String color)
FancyPineapple(String color, int age)
Every class definition has each of the following EXCEPT
Defined objects as copies of the class
Consider this class definition of a Pineapple. public class Pineapple { private boolean isRipe; private String color; private double weight; // Rest of class goes here } When we use this class to create Pineapple objects, which of the following is guaranteed to be true?
Every Pineapple object will have the same attributes.
Suppose a program is a client of the Player class. Here is a snippet of code contained in the program Player firstPlayer = new Player("Karel", "Warrior", "Mote Prime", 90); Looking at the documentation of the class, you find the signature for the constructor, shown below. Player Player(String name, String role, String location, int health); Where would you find the formal parameters?
In the documentation.
What would be printed by this code snippet? String language = "Java"; String opinion = " is fun!"; System.out.println(language + opinion);
Java is fun!
Which of these is an example of calling a static method?
Math.abs(x)
Strings are immutable. This means that
Once a String variable has been assigned a value, the value cannot be modified but the variable can be assigned to a different value.
Which of the following would properly print this quote by Edsger W. Dijkstra (an early pioneer of Computer Science) as shown below? "Testing shows the presence, not the absence of bugs" --- Edsger W. Dijkstra
System.out.println("\"Testing shows the presence, not the absence of bugs\""); System.out.println("--- Edsger W. Dijkstra");
What are parameters?
The formal names given to the data that gets passed into a method.
A reference variable holds a special value. What is this special value?
The memory address of an object
A Timer class is a class that represents a minute timer. A partial definition of the class is given below. public class Timer { private int length; public Timer(int duration) { length = duration; } public void endTime() { System.out.print("The timer will end in " ); System.out.print(length); System.out.println(" minutes"); } public void addFiveMinutes() { length = length + 5; } } What is the output of the following main method? public static void main(String[] args){ Timer muffins = new Timer(30); muffins.endTime(); muffins.addFiveMinutes(); muffins.endTime(); }
The timer will end in 30 minutes The timer will end in 35 minutes
You are using a class as a client. What would you need to know in order to create an object of the class you intend to use?
You need to know the formal parameters in order to pass in actual parameters.
Consider the following code snippet. What would the output be? String school = "Rydell High School"; System.out.println(school.substring(8)); System.out.println(school);
igh School Rydell High School
Which of the following is a correctly written method for the class below? public class Timer { private int startMin; private int length; public Timer(int minute, int duration) { startMin = minute; length = duration; } public Timer(int duration) { startMin = 0; length = duration; } }
public void addFiveMinutes() { length = length + 5; }
Consider the Circle class below. public class Circle { private double radius; public Circle(double circleRadius) { radius = circleRadius; } public void setRadius(int newRadius) { radius = newRadius; } public void printDiameter() { double diameter = 2 * radius; System.out.println(diameter); } } What is the output of the main method below? public class MyProgram { public static void main(String[] args) { Circle pizza = new Circle(12); pizza.printDiameter(); pizza.setRadius(10); pizza.printDiameter(); } }
24.0 20.0
Which of the following statements will not compile? You may assume any text in this font is an initialized variable. I. "Tilly is " + age + " years old" II. "My favorite letter is " + 'k' III. greeting + name IV. "Our team, " + teamName + " has " + numPlayers
All of these statements will compile
What is the purpose of overloading a class' constructor?
It allows the user to set the values of different combinations of the instance variables when the object is created.
Which of the following is NOT part of the constructor signature?
Which instance variables are initialized
The value that a method outputs is called
a return value.
Consider the follow class: public class Rectangle { private int width; private int height; public Rectangle(int rectWidth, int rectHeight) { width = rectWidth; height = rectHeight; } public int getArea() { return width * height; } public int getHeight() { return height; } public int getWidth() { return width; } public String toString() { return "Rectangle with width: " + width + " and height: " + height; } } If a new variable Rectangle shape = new Rectangle(10, 20); was initialized, what is the correct syntax for retrieving the area of shape?
int area = shape.getArea();
Consider this code snippet that uses a class called Rectangle. int roomHeight = 40; int roomWidth = roomHeight * 3; Rectangle room = new Rectangle(roomHeight, roomWidth); Which of the following is a reference variable?
room
/** * The Shark class describes a shark. * * Every shark has a region where it lives and an age. * */ public class Shark { // Attributes private String habitat; private int age; public Shark(String region, int sharkAge) { habitat = region; age = sharkAge; } } Which of the following choices is a formal parameter of the constructor?
sharkAge