Question

In: Computer Science

Consider the following code: public class Bay extends Lake { public void method1() { System.out.println("Bay 1");...

Consider the following code:

public class Bay extends Lake {
public void method1() {
     System.out.println("Bay 1");
     super.method2();
}

  public void method2() {
       System.out.println("Bay 2");
   }
}

//*********************************

class Pond {
  public void method2() {
         System.out.println("Pond 2");
  }
}

//**************************

class Ocean extends Bay {
        public void method2() {
                 System.out.println("Ocean 2");
        }
}

//*********************************

class Lake extends Pond {
        public void method3() {
            System.out.println("Lake 3");
            method2();
      }
}

//****************************
class Driver
{
public static void main(String[] args)
{
    
   Object var4 = new Bay(); 
   Lake var5 = new Bay();
    
  // the following lines of code are causing wither syntax or runtime error
    
   // var4.method2();  error 1
 
  // ((Ocean) var5).method1();  error 2

}
}

Answer the following question.

Identify the cause of the error is it run time error or syntax error.

Explain why the error is happening

provide code to fix the problem. Do not change the declaration or the instantiation to fix the issue.

Solutions

Expert Solution


class Bay extends Lake {
   public void method1() {
       System.out.println("Bay 1");
       super.method2();
   }

   public void method2() {
       System.out.println("Bay 2");
   }
}

class Pond {
   public void method2() {
       System.out.println("Pond 2");
   }
}

class Ocean extends Bay {
   public void method2() {
       System.out.println("Ocean 2");
   }
}

class Lake extends Pond {
   public void method3() {
       System.out.println("Lake 3");
       method2();
   }
}

public class Driver {
   public static void main(String[] args) {

       Object var4 = new Bay();
       Lake var5 = new Bay();

       // the following lines of code are causing wither syntax or runtime error
      
       // Compile time error because here var4 is reference of class Object so method4 does not have declaration in class Object
       // so we will get compilation error
         
       ((Bay)var4).method2();

       // Here the var5 is pointing to Object of class Bay but we are trying to cast it to Ocean here it is referencing with Lake so there is no relationship so
       // it will give ClassCastException
       ((Bay)var5).method1();
   }
}

NOTE : PLEASE COMMENT BELOW IF YOU HAVE CONCERNS.

I AM HERE TO HELP YOUIF YOU LIKE MY ANSWER PLEASE RATE AND HELP ME IT IS VERY IMP FOR ME


Related Solutions

1. Consider the following code: public class Widget implements Serializable { private int x; public void...
1. Consider the following code: public class Widget implements Serializable { private int x; public void setX( int d ) { x = d; } public int getX() { return x; } writeObject( Object o ) { o.writeInt(x); } } Which of the following statements is true? I. The Widget class is not serializable because no constructor is defined. II. The Widget class is not serializable because the implementation of writeObject() is not needed. III. The code will not compile...
Consider the following code: public class Example { public static void doOp(Op op) { boolean result...
Consider the following code: public class Example { public static void doOp(Op op) { boolean result = op.operation(true, false); System.out.println(result); } public static void main(String[] args) { doOp(new AndOperation()); doOp(new OrOperation()); } } main's output: false true Define any interfaces and/or classes necessary to make this output happen. Multiple answers are possible. You may not modify any of the code in Example.
Task 2/2: Java program Based upon the following code: public class Main {   public static void...
Task 2/2: Java program Based upon the following code: public class Main {   public static void main( String[] args ) {     String alphabet = "ABCDEFGHIJKLMNMLKJIHGFEDCBA";     for( <TODO> ; <TODO> ; <TODO> ) {       <TODO>;     } // Closing for loop   } // Closing main() } // Closing class main() Write an appropriate loop definition and in-loop behavior to determine if the alphabet string is a palindrome or not. A palindrome is defined as a string (or more generally, a token) which...
Create a new Java file, containing this code public class DataStatsUser { public static void main...
Create a new Java file, containing this code public class DataStatsUser { public static void main (String[] args) { DataStats d = new DataStats(6); d.append(1.1); d.append(2.1); d.append(3.1); System.out.println("final so far is: " + d.mean()); d.append(4.1); d.append(5.1); d.append(6.1); System.out.println("final mean is: " + d.mean()); } } This code depends on a class called DataStats, with the following API: public class DataStats { public DataStats(int N) { } // set up an array (to accept up to N doubles) and other member...
CODE: C# using System; public static class Lab6 { public static void Main() { // declare...
CODE: C# using System; public static class Lab6 { public static void Main() { // declare variables int hrsWrked; double ratePay, taxRate, grossPay, netPay=0; string lastName; // enter the employee's last name Console.Write("Enter the last name of the employee => "); lastName = Console.ReadLine(); // enter (and validate) the number of hours worked (positive number) do { Console.Write("Enter the number of hours worked (> 0) => "); hrsWrked = Convert.ToInt32(Console.ReadLine()); } while (hrsWrked < 0); // enter (and validate) the...
Consider the following interface: public interface Car{ public String getMake(); public void setMake(); public void honk();...
Consider the following interface: public interface Car{ public String getMake(); public void setMake(); public void honk(); public void crash(); public void drive(); } public interface Boat{ public String getMake (); public void setMake (); public void blast_horn(); public void sink(); public void move(); } 1. Create a concrete FamilyCar class from the Car interface.
1. Convert the following code shown below to C++ code: public class HighwayBillboard { public int...
1. Convert the following code shown below to C++ code: public class HighwayBillboard { public int maxRevenue(int[] billboard, int[] revenue, int distance, int milesRes) { int[] MR = new int[distance + 1]; //Next billboard which can be used will start from index 0 in billboard[] int nextBillBoard = 0; //example if milesRes = 5 miles then any 2 bill boards has to be more than //5 miles away so actually we can put at 6th mile so we can add...
Consider this program: public class Main { public static void main(String[] args) { String s1 =...
Consider this program: public class Main { public static void main(String[] args) { String s1 = "hello"; String s2 = "hello"; String s3 = new String("hello"); System.out.println(s1 == s2); System.out.println(s2 == s3); System.out.println(s2.equals(s3)); } } When we run the program, the output is: true false true Explain why this is the output, using words and/or pictures.
Study the following class definition: class Car { public: Car(double speed); void start(); void accelerate(double speed);...
Study the following class definition: class Car { public: Car(double speed); void start(); void accelerate(double speed); void stop(); double get_speed() const; private: double speed; }; Which of the following options would make logical sense in the definition of the void accelerate(double speed)function? Group of answer choices this->speed = this->speed; this->speed = speed; this.speed = speed; speed1 = this->speed; Flag this Question Question 131 pts The Point class has a public function called display_point(). What is the correct way of calling...
public class Problem1 {    public static void partition(int[] A)    {        /*Rearrange the...
public class Problem1 {    public static void partition(int[] A)    {        /*Rearrange the array to have the following property:        Suppose the first element in the original array has the value x.        In the new array, suppose that x is in position i, that is data[i] = x.        Then, data[j] <= x for all j < I and data[j] > x for all j > i.        Thus, informally, all the...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT