Can We Modify The Throws Clause Of The Superclass Method While Overriding It In The Subclass
Yes, we can modify the throws clause of the superclass method while overriding it in the subclass. However, there are some rules which are to be followed while overriding in case of exception handling.
- If the superclass method does not declare an exception, subclass overridden method cannot declare the checked exception, but it can declare the unchecked exception.
- If the superclass method declares an exception, subclass overridden method can declare same, subclass exception or no exception but cannot declare parent exception.
How To Reverse A String In Java
It might be surprising, but there is no reverse utility method in the String class. But, itâs a very simple task. We can create a character array from the string and then iterate it from the end to start. We can append the characters to a string builder and finally return the reversed string.
public class StringPrograms public static String reverse }
Bonus Points: Adding null check in the method and using StringBuilder for appending the characters. Easy to Miss: The indexing in Java starts from 0. So, we have to start at âchars.length – 1â in the for loop.
Find 5 Mistakes In The Following Code Snippet
package com.journaldev.programming-interviews public class String Programs }
Recommended Reading: How To Nail A Zoom Interview
Difference Between Method Overloading And Overriding
|1) Method overloading increases the readability of the program.
|Method overriding provides the specific implementation of the method that is already provided by its superclass.
|2) Method overloading occurs within the class.
|Method overriding occurs in two classes that have IS-A relationship between them.
|3) In this case, the parameters must be different.
|In this case, the parameters must be the same.
Write A Program To Show A Single Thread In Java
Java Program to show Single Thread
When the sentence is a palindrome
Input: 2 Race, e cAr 2Output: true
When the sentence is not a palindrome
Input: 2 Race, a cAr 2Output: false
- Corner cases, You Might Miss: It is very important to convert all the alphabets in the String to lowercase. If this is not done, our answer will not be correct. Also, the special case of the string being empty is not handled separately as the program automatically covers this test case by not including any character of the string. So, according to our program, an empty string will be a palindrome.
- If you want that the answer should be false in the case of an empty string, you can apply this condition in the isStrPalindrome function.
- Time Complexity: O where N is the length of the input string.Auxiliary Space: O as we have not used any extra space.
Read Also: How To Answer Nursing Interview Questions
Write A Program In Java To Calculate Pow Using Recursion The Expected Time Complexity Is O Where N Is The Power You Cannot Use Any Extra Space Apart From The Recursion Call Stack Space
We have seen how we can calculate the pow in linear time. We can optimize our approach by changing the recurrence relation. Let us understand this with the help of an example shown below:
So, we can see that if the power is even, we can divide the power by 2 and can multiply x to the power n/2 by itself to get our answer. What if the power of the number is odd?
In that case, we multiply the number x once to the term x to the power n/2 multiplied by itself. Here, n/2 will be the floor value of . You can verify this for any pair of x and n.
So, doing this will reduce the time complexity from O to O. This happens because of the change in recurrence relation and the recursion tree as shown below.
Solving these recurrence relations gives us the respective time complexities. So, the code for O approach is shown below
Java Code for in Logarithmic Time Complexity
import java.util.* classMainpublicstaticdoublepowreturn power }publicstaticvoidmain}
Input: 1.103Output: 1.3676310000000003
- For negative Power
- Corner Cases, You Might Miss: The power of a number can be negative too. So, we know that x-n = . In this way, we can handle the corner test case of a power being negative.
- Time Complexity: As already discussed, Time Complexity is O.
- Auxiliary Space: The auxiliary space is O as we have not used any extra space.
What Is A Multi
There could be a scenario where a single piece of code can cause multiple exceptions. You can handle this situation by creating several catch clauses, each catching a different exception. When the program throws an exception, it inspects the catch statements in the order in which they appear. The first catch whose type matches the type of exception is executed. Below is an exception handling program in Java to understand the multi-catch block.
// Multi-catch block // Code taken from Edureka.com public class SampleMultipleCatchBlock catch catch catch System.out.println } }
Also Check: How To Interview Job Candidates
Q 25 What Happens When The Main Isn’t Declared As Static
When the main method is not declared as static, then the program may be compiled correctly but ends up with a severe ambiguity and throws a run time error that reads “NoSuchMethodError.”
With this we are done with the first section that is Basic Java Interview Question, Now, lets move on to our next section of Intermediate Java Interview Questions.
What Are The Differences Between Constructor And Method Of A Class In Java
|Constructor is used for initializing the object state.
|Method is used for exposing the object’s behavior.
|Constructor has no return type.
|Method should have a return type. Even if it does not return anything, return type is void.
|Constructor gets invoked implicitly.
|Method has to be invoked on the object explicitly.
|If the constructor is not defined, then a default constructor is provided by the java compiler.
|If a method is not defined, then the compiler does not provide it.
|The constructor name should be equal to the class name.
|The name of the method can have any name or have a class name too.
|A constructor cannot be marked as final because whenever a class is inherited, the constructors are not inherited. Hence, marking it final doesn’t make sense. Java throws compilation error saying – modifier final not allowed here
|A method can be defined as final but it cannot be overridden in its subclasses.
|Final variable instantiations are possible inside a constructor and the scope of this applies to the whole class and its objects.
|A final variable if initialised inside a method ensures that the variable cant be changed only within the scope of that method.
You May Like: A Follow Up Email After Interview
Write A Program In Java To Print The Elements Of The Matrix In Wave Order As Shown Below
It is clear from the image itself that we are traversing column-wise. Now, when we traverse an even column, we traverse it from top to bottom and when we traverse an odd column, we traverse it from bottom to top direction.
Code for Wave Print a Matrix in Java
import java.io.* import java.util.* publicclassMain } for } else } System.out.println } }}
- Time Complexity: O where N is the number of rows and M is the number of columns.
- Auxiliary Space: O as we have not used any extra space to solve this problem.
How Is Jsp Better Than Servlet Technology
JSP is a technology on the servers side to make content generation simple. They are document-centric, whereas servlets are programs. A Java server page can contain fragments of Java program, which execute and instantiate Java classes. However, they occur inside an HTML template file. It provides the framework for the development of a Web Application.
You May Like: How To Crack Devops Interview
What Is The Difference Between Concurrent Collections And Synchronized Collections
Concurrent collection and synchronized collection are used for thread safety. The difference between them is how they achieve thread-safety by their scalability, performance. The performance of concurrent collection is better than synchronized collection because it holds a single part of the map to achieve concurrency.
Can We Change The Scope Of The Overridden Method In The Subclass
Yes, we can change the scope of the overridden method in the subclass. However, we must notice that we cannot decrease the accessibility of the method. The following point must be taken care of while changing the accessibility of the method.
- The private can be changed to protected, public, or default.
- The protected can be changed to public or default.
- The default can be changed to public.
- The public will always remain public.
You May Like: How To Prepare For An Interview Manager Position
Q 67 What Is The Difference Between Systemout Systemerr And Systemin
System.out and System.err represent the monitor by default and thus can be used to send data or results to the monitor. System.out is used to display normal messages and results. System.eerr is used to display error messages. System.in represents InputStream object which by default represents standard input device, i.e., keyboard.
Q8 What Purpose Do The Keywords Final Finally And Finalize Fulfill
Final is used to apply restrictions on class, method, and variable. A final class cant be inherited, final method cant be overridden and final variable value cant be changed. Lets take a look at the example below to understand it better.
Finally is used to place important code, it will be executed whether the exception is handled or not. Lets take a look at the example below to understand it better.
class FinallyExample catch finally }}}
Finalize is used to perform clean up processing just before the object is garbage collected. Lets take a look at the example below to understand it better.
class FinalizeExample public static void main}
Recommended Reading: Financial Analyst Interview Case Study
What Are The Advantages Of Hibernate Over Jdbc
Some of the important advantages of Hibernate framework over JDBC are:
Q 30 How Many Types Of Constructors Are Used In Java
There are two types of constructors that are used in Java.
Parameterized Constructors: Parameterized constructor accepts the parameters with which users can initialize the instance variables. Users can initialize the class variables dynamically at the time of instantiating the class.
Default constructors: This type doesnt accept any parameters rather, it instantiates the class variables with their default values. It is used mainly for object creation.
Read Also: How To Answer Typical Interview Questions
Can You Tell The Difference Between Equals Method And Equality Operator In Java
|This is a method defined in the Object class.
|It is a binary operator in Java.
|This method is used for checking the equality of contents between two objects as per the specified business logic.
|This operator is used for comparing addresses , i.e checks if both the objects are pointing to the same memory location.
- In the cases where the equals method is not overridden in a class, then the class uses the default implementation of the equals method that is closest to the parent class.
- Object class is considered as the parent class of all the java classes. The implementation of the equals method in the Object class uses the == operator to compare two objects. This default implementation can be overridden as per the business logic.
Q 42 Why Are Generics Used In Java Programming
Compile-time type safety is provided by using generics. Compile-time type safety allows users to catch unnecessary invalid types at compile time. Generic methods and classes help programmers specify a single method declaration, a set of related methods, or related types with an available class declaration.
Describe The Spring Framework
The Spring framework is used to make enterprise applications using Java. Its central features can work with essentially any Java application.
Spring is an application framework and container that facilitates the inversion of control . With inversion of control, a generic network sends the flow of control to customized portions of a program.
What Are The Different Ways Of Threads Usage
- We can define and implement a thread in java using two ways:
- Extending the Thread class
classInterviewBitThreadExampleextendsThread publicstaticvoidmain }
- Implementing the Runnable interface
classInterviewBitThreadExampleimplementsRunnable publicstaticvoidmain }
- Implementing a thread using the method of Runnable interface is more preferred and advantageous as Java does not have support for multiple inheritances of classes.
- start method is used for creating a separate call stack for the thread execution. Once the call stack is created, JVM calls the run method for executing the thread in that call stack.
You May Like: Robin Roberts Kardashian Full Interview
Question : How To Find Duplicate Characters In String In Java
Solution: Here is a solution to find duplicate characters in String.
How Do You Reverse A String In Java
There is no reverse utility provided in Java. Hiring managers might ask this question to determine your knowledge of Java and your problem-solving skills. You can create a character array from the string and iterate it from the end to the beginning. You can append the characters to a string builder and finally return the reversed string.
You May Like: Interview Questions For Call Center Managers
Q 3 What Do You Get In The Java Download File How Do They Differ From One Another
We get two major things along with the Java Download file.
Abbreviation for Java Runtime Environment
JDK is a dedicated kit for solely software development
JRE is a set of software and library designed for executing Java Programs
Unlike JVM, JDK is Platform Dependent
Unlike JVM, JRE is also Platform Dependent
JDK package is a set of tools for debugging and Developing
JRE Package is one that only supports files and libraries for a runtime environment
JDK package will be provided with an installer file
JRE Package does not get an installer but has only a runtime environment
How To Find If A String Is Present In A Text File
We can use Scanner class to read the file contents line by line. Then use String contains method to check if the string is present in the file or not.
boolean findStringInFile throws FileNotFoundException }scanner.close return false }
The above code assumes that the string we are searching for in the file doesnât contain newline characters.
Recommended Reading: How To Write An Interview Rejection Letter
What Is The Difference Between Assert And Verify Statements In Selenium
- We can check whether an element is on the page or not.
- The test fails and gets terminated whenever there is a fail in the check. That is the program control flow stops.
- Its only to specify whether the given condition is true or false.
- The program control flow does not stop due to this.
Overall, the Verify statement does not halt the program execution whereas the Assert statement does halt the execution.
Also Check: What Are Some Common Interview Questions
What Is The Difference Between Static Method And Instance Method
|static or class method
|1)A method that is declared as static is known as the static method.
|A method that is not declared as static is known as the instance method.
|2)We don’t need to create the objects to call the static methods.
|The object is required to call the instance methods.
|3)Non-static members cannot be accessed in the static context directly.
|Static and non-static variables both can be accessed in instance methods.
|4)For example: public static int cube
|For example: public void msg.
You May Like: Is An Interview With God Based On A True Story