Featured Post

8 Ways to Optimize AWS Glue Jobs in a Nutshell

Image
  Improving the performance of AWS Glue jobs involves several strategies that target different aspects of the ETL (Extract, Transform, Load) process. Here are some key practices. 1. Optimize Job Scripts Partitioning : Ensure your data is properly partitioned. Partitioning divides your data into manageable chunks, allowing parallel processing and reducing the amount of data scanned. Filtering : Apply pushdown predicates to filter data early in the ETL process, reducing the amount of data processed downstream. Compression : Use compressed file formats (e.g., Parquet, ORC) for your data sources and sinks. These formats not only reduce storage costs but also improve I/O performance. Optimize Transformations : Minimize the number of transformations and actions in your script. Combine transformations where possible and use DataFrame APIs which are optimized for performance. 2. Use Appropriate Data Formats Parquet and ORC : These columnar formats are efficient for storage and querying, signif

15 awesome Java Interview Questions to know

Java interview is one of the tough interviews for developers coming from other technologies. So I have given very basic interview questions they asked. Really awesome to know these questions.

15 Java Questions

1. What is JVM? Why is Java called the ‘Platform Independent Programming Language’?
  • JVM, or the Java Virtual Machine, is an interpreter that accepts ‘Bytecode’ and executes it.
  • Java has been termed as a ‘Platform Independent Language’ as it primarily works on the notion of ‘compile once, run everywhere’. Here’s a sequential step establishing the Platform independence feature in Java:
  • The Java Compiler outputs Non-Executable Codes called ‘Bytecode’.
  • Bytecode is a highly optimized set of a computer instruction which could be executed by the Java Virtual Machine (JVM).
  • The translation into Bytecode makes a program easier to be executed across a wide range of platforms since all we need is a JVM designed for that particular platform.
  • JVMs for various platforms might vary in configuration, those they would all understand the same set of Bytecode, thereby making the Java Program ‘Platform Independent’.
2. What is the difference between JDK and JRE?

When asked typical Java Interview Questions most startup Java developers get confused with JDK and JRE. And eventually, they settle for ‘anything would do man, as long as my program runs!!’ Not quite right if you aspire to make a living and career out of Programming.

The “JDK” is the Java Development Kit. I.e., the JDK is a bundle of software that you can use to develop Java-based software.
 
The “JRE” is the Java Runtime Environment. I.e., the JRE is an implementation of the Java Virtual Machine which actually executes Java programs.  Typically, each JDK contains one (or more) JRE’s along with the various development tools like the Java source compilers, bundling and deployment tools, debuggers, development libraries, etc.

3. What does the ‘static’ keyword mean? 

We are sure you must be well-acquainted with the Java Basics. Now that we are settled with the initial concepts, let’s look into the Language specific offerings. The static variable is associated with a class and not objects of that class. 

For example:

public class ExplainStatic {
public static String name = "Look I am a static variable";
}
We have another class where-in we intend to access this static variable just defined.
public class Application {
public static void main(String[] args) {
System.out.println(ExplainStatic.name)
}

 This is one of the most common and fundamental Java interview questions. This is something you should have right at your finger-tips when asked. The eight Primitive Data types supported by Java are: We don’t create objects of the class ExplainStatic to access the static variable. We directly use the class name itself: ExplainStatic.name

4. What are the Data Types supported by Java? What are Autoboxing and Unboxing?

  • Byte: 8-bit signed two’s complement integer. It has a minimum value of -128 and a maximum value of 127 (inclusive)
  • Short: 16-bit signed two’s complement integer. It has a minimum value of -32,768 and a maximum value of 32,767 (inclusive).
  • Int : 32-bit signed two’s complement integer. It has a minimum value of -2,147,483,648 and a maximum value of 2,147,483,647 (inclusive)
  • Long : 64-bit signed two’s complement integer. It has a minimum value of -9,223,372,036,854,775,808 and a maximum value of 9,223,372,036,854,775,807 (inclusive)
  • Float and Double
  • Autoboxing: The Java compiler brings about an automatic transformation of primitive type (int, float, double, etc.) into their object equivalents or wrapper type (Integer, Float, Double, etc) for ease of compilation.
  • Unboxing: The automatic transformation of wrapper types into their primitive equivalent is known as Unboxing. 

Check out remaining questions here: Read more
Ads

Comments

Popular posts from this blog

How to Fix datetime Import Error in Python Quickly

Explained Ideal Structure of Python Class

How to Check Kafka Available Brokers