Advanced Programming Concepts|My homework helper

Posted: February 27th, 2023

Homework #3 MCIS 5103: Advanced Programming Concepts Instructor: Dr. Justin L. Rice Due Date: 3/1/2023 Please refer to the code in the Appendix (pages 3 – 4) to answer the following questions. 1. Write the output for each section of print statements. (10 points) 2. Which Rectangle constructor does instance box1 call? Why? What concept does this demonstrate? Explain [in four sentences or less].(10 points) 3. Which Rectangle constructor does instance box2 call? Why? What concept does this demonstrate? Explain [in four sentences or less]. (10 points) 4. Which Rectangle constructor does instance box3 call? Why? What concept does this demonstrate? Explain [in four sentences or less]. (10 points) 5. What is the connection between box2 and box4? What happens (memory wise) when both box2 and box 4 are declared null? Explain [in three sentences or less]. (20 points) 6. In the Main class, there are two variables named z. What is the difference between the two variables? What concept does the output of the last three print statements demonstrate? Explain [in four sentences or less]. (20 points) 7. In the Rectangle class, explain the implementation of the Rectangle(int l, int w) constructor. Explain [in four sentences or less]. (10 points) 8. In the Rectangle class, explain the implementation of the Rectangle(Rectangle other) constructor. Explain [in four sentences or less]. (10 points) APPENDIX RectangleVolume.java public class RectangleVolume { public int length; public int width; public int height; public RectangleVolume(int l, int w, int h) { length = l; width = w; height = h; } public RectangleVolume(int l, int w) { this(l, w, 5); } public RectangleVolume(RectangleVolume other) { this(other.length, other.width, other.height); } public int calcVolume(){ return length * width * height; } } Main.java class Main { static int z; public static void main(String[] args) { RectangleVolume box3 = new RectangleVolume(3,4,5); RectangleVolume box1 = new RectangleVolume(box3); RectangleVolume box2 = new RectangleVolume(3,4); RectangleVolume box4 = box2; box1 = null; System.out.println(“\n”); System.out.println(“box(l,w,h) = (” + box3.length + “,” + box3.width + “,” + box3.height + “)”); System.out.println(“box(l,w,h) = (” + box4.length + “,” + box4.width + “,” + box4.height + “)”); System.out.println(“box(l,w,h) = (” + box2.length + “,” + box2.width + “,” + box2.height + “)”); box2 = null; System.out.println(“\n”); z = 34; System.out.println(“z = ” + z); int z; z = box3.calcVolume(); System.out.println(“z = ” + z); System.out.println(“z = ” + Main.z); } }

 

SOLUTION

  • Instance box1 calls the Rectangle(RectangleVolume other) constructor. This constructor takes an object of type RectangleVolume as an argument and creates a new RectangleVolume object with the same length, width, and height values. This concept is known as copy constructor. Instance box2 calls the Rectangle(int l, int w) constructor. This constructor takes two integer arguments and sets the length and width values to those arguments. It also sets the height value to a default value of 5. This concept is known as constructor overloading. Instance box3 calls the RectangleVolume(int l, int w, int h) constructor. This constructor takes three integer arguments and sets the length, width, and height values to those arguments. This concept is also known as constructor overloading.

Expert paper writers are just a few clicks away

Place an order in 3 easy steps. Takes less than 5 mins.

Calculate the price of your order

You will get a personal manager and a discount.
We'll send you the first draft for approval by at
Total price:
$0.00