L9 - Constructors
L9 - Constructors
Here,
❖ Test() is a constructor. It has the same name as that of the class
and doesn't have a return type.
❖
Example:
class Cons {
private String name;
// constructor
Cons() {
System.out.println("Constructor Called:");
name = "Prajesh";
}
2. Parameterized Constructor
3. Default Constructor
1. No-Arg Constructors:
❖ Similar to methods, a Java constructor may or may not have any
parameters (arguments).
For example,
private Constructor()
{
// body of the constructor
}
For example: Java Private No-arg Constructor
class Main {
int i;
// constructor with no parameter
private Main() {
i = 5;
System.out.println("Constructor is called");
}
public static void main(String[] args) {
// calling the constructor without any parameter
Main obj = new Main();
System.out.println("Value of i: " + obj.i);
}
}
Output:
Constructor is called
Value of i: 5
class Company {
String name;
// public constructor
public Company() {
name = "Prabha";
}
}
class Main {
public static void main(String[] args) {
// object is created in another class
Company obj = new Company();
System.out.println("Company name = " + obj.name);
}
}
Output:
class Main {
String languages;
// constructor accepting single value
Main(String lang) {
languages = lang;
System.out.println(languages + " Programming Language");
}
public static void main(String[] args) {
// call constructor by passing a single value
Main obj1 = new Main("Java");
Main obj2 = new Main("Python");
Main obj3 = new Main("C");
}
}
Output:
3. Default Constructor:
class Main {
int a;
boolean b;
System.out.println("Default Value:");
System.out.println("a = " + obj.a);
System.out.println("b = " + obj.b);
}
}
Output:
Default Value:
a = 0
b = false
boolean false
byte 0
short 0
int 0
long 0L
char \u0000
float 0.0f
double 0.0d