What is the difference between a static and a non-static variable?

A static variable is a variable that retains its value even after the program that created it has finished running. For example, a static variable in a program that calculates the sum of two numbers would retain the sum even after the program has finished running.

A non-static variable is a variable that changes its value when the program that created it is running. For example, a non-static variable in a program that calculates the sum of two numbers would change its value each time the program runs.

What is the difference between an interface and an abstract class?

An interface is a collection of abstract methods and constants that form a common set of base rules for a class to follow. An interface does not contain any implementation code, and it cannot be instantiated. An example of an interface might be a Comparable interface which defines the compareTo() method.

An abstract class is a class that contains both abstract methods (methods without an implementation) and concrete methods (methods with an implementation). An abstract class can be instantiated, and it is often used as a base class from which other classes can inherit. An example of an abstract class might be an Animal class which defines the abstract method makeSound() and the concrete method eat().

What is the purpose of garbage collection in Java?

Garbage collection in Java is a process by which the Java Virtual Machine (JVM) automatically frees up memory occupied by objects that are no longer being used. This process helps to improve the performance of a Java application by reclaiming memory and allowing it to be used for other purposes.

For example, let’s say you have a program that creates a large number of objects. After the objects are no longer needed, they are not immediately deleted from memory. Instead, they remain in memory until the garbage collector runs and reclaims the memory used by the objects. This allows the memory to be used for other purposes, such as creating new objects.

How do you define a class in Java?

A class in Java is a template that is used to create objects, and to define the properties and behaviors of those objects.

For example, a Car class could be used to create objects that represent individual cars. The Car class would specify the properties of a car, like its make, model, and color, as well as the behaviors, like accelerate, brake, and turn.

public class Car {

// Properties of the class…
private String make;
private String model;
private int year;
private String color;

// Constructor of the class…
public Car(String make, String model, int year, String color) {
this.make = make;
this.model = model;
this.year = year;
this.color = color;
}

// Methods of the class…
public void accelerate() {
System.out.println(“Vroom!”);
}

public void brake() {
System.out.println(“Screech!”);
}

public void turn(String direction) {
System.out.println(“Turning ” + direction + “.”);
}

}

What is the difference between a constructor and a method?

A constructor is a special type of method that is used to create an instance of an object. It is invoked when an instance of the object is created and it is used to set up the initial state of the object.

A method is a block of code that performs a specific task and is associated with an object. It is invoked by calling the method on the object.

Example:

Constructor:

public class Car {
private String make;
private String model;

public Car(String make, String model) {
this.make = make;
this.model = model;
}
}

Method:

public class Car {
private String make;
private String model;

public void setMake(String make) {
this.make = make;
}

public void setModel(String model) {
this.model = model;
}
}

What is the difference between an “attribute” and a “property” in JavaScript?

Attribute and property are two terms that are often used interchangeably in JavaScript, but they have slightly different meanings.

An attribute is a characteristic or trait of an element that is not necessarily visible. It usually describes the data associated with the element, such as an id or class. For example, the ‘id’ attribute of a

element might be “myDiv”.

A property, on the other hand, is a characteristic or trait of an element that is visible. It usually describes the behavior of the element, such as its size or position. For example, the ‘width’ property of a

element might be “200px”.