猿教程 Logo

Java 构造函数

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效:去购买

java中的构造方法是一种特殊类型的方法,用于初始化对象。

Java构造函数在对象创建时被调用。 它构造值,即提供对象的数据,这是为什么它被称为构造函数。

创建java构造函数的规则

构造函数有两个规则:

  1. 构造函数名称必须与其类名称相同

  2. 构造函数必须没有显式返回类型

Java构造函数的类型

有两种类型的构造函数:

  1. 默认构造函数(no-arg constructor)

  2. 参数化构造函数



Java默认构造函数

没有参数的构造函数称为默认构造函数。

默认构造函数的语法:

<class_name>(){}

默认构造函数的示例

在这个例子中,我们在Bike类中创建了无参构造函数。 它将在对象创建时被调用。

相关实例:

class Bike1{
Bike1(){System.out.println("Bike is created");}
public static void main(String args[]){
Bike1 b=new Bike1();
}
}

输出:

Bike is created

规则:如果类中没有构造函数,编译器会自动创建一个默认构造函数。


Q)默认构造函数的目的是什么?

默认构造函数为对象提供默认值,如0,null等,具体取决于类型。

显示默认值的默认构造函数示例

相关实例:

class Student3{
int id;
String name;

void display(){System.out.println(id+" "+name);}

public static void main(String args[]){
Student3 s1=new Student3();
Student3 s2=new Student3();
s1.display();
s2.display();
}
}

输出:

0 null
0 null

解释:在上面的类中,你没有创建任何构造函数,所以编译器提供了一个默认构造函数。默认构造函数提供了0和空值。


Java参数化构造函数

具有参数的构造函数称为参数化构造函数。

为什么使用参数化构造函数?

参数化构造函数用于为不同对象提供不同的值。

参数化构造函数的示例

在这个例子中,我们创建了具有两个参数的Student类的构造函数。 我们可以在构造函数中有任意数量的参数。

相关实例:

class Student4{
    int id;
    String name;
    
    Student4(int i,String n){
    id = i;
    name = n;
    }
    void display(){System.out.println(id+" "+name);}
 
    public static void main(String args[]){
    Student4 s1 = new Student4(111,"Karan");
    Student4 s2 = new Student4(222,"Aryan");
    s1.display();
    s2.display();
   }
}

输出:

111 Karan
222 Aryan

Java构造函数重载

构造方法重载是Java中的一种技术,其中一个类可以有任何数量的参数列表不同的构造函数。编译器通过列表中的参数数量及其类型来区分这些构造函数。

构造函数重载示例

相关实例:

class Student5{
    int id;
    String name;
    int age;
    Student5(int i,String n){
    id = i;
    name = n;
    }
    Student5(int i,String n,int a){
    id = i;
    name = n;
    age=a;
    }
    void display(){System.out.println(id+" "+name+" "+age);}
 
    public static void main(String args[]){
    Student5 s1 = new Student5(111,"Karan");
    Student5 s2 = new Student5(222,"Aryan",25);
    s1.display();
    s2.display();
   }
}

输出:

111 Karan 0
222 Aryan 25

java中的构造函数和方法之间的区别

构造函数和方法之间有许多区别。 它们在下面给出。

Java ConstructorJava方法
构造器用于初始化对象的状态。方法用于暴露对象的行为。
构造函数不能有返回类型。方法必须有返回类型。
隐式调用构造函数。方法被显式调用。
如果你没有任何构造函数,java编译器提供一个默认构造函数。在任何情况下编译器都不提供方法。
构造函数名称必须与类名称相同。方法名称可以或可以不与类名称相同。

Java复制构造函数

在Java中没有复制构造函数。 但是,我们可以将一个对象的值复制到另一个像C ++中的复制构造函数。

在java中有很多方法可以将一个对象的值复制到另一个对象中。 他们是:

  • 通过构造函数

  • 通过将一个对象的值分配给另一个对象

  • 通过Object类的clone()方法

在这个例子中,我们将使用java构造函数将一个对象的值复制到另一个对象中。

相关实例:

class Student6{  
    int id;  
    String name;  
    Student6(int i,String n){  
    id = i;  
    name = n;  
    }  
      
    Student6(Student6 s){  
    id = s.id;  
    name =s.name;  
    }  
    void display(){System.out.println(id+" "+name);}  
   
    public static void main(String args[]){  
    Student6 s1 = new Student6(111,"Karan");  
    Student6 s2 = new Student6(s1);  
    s1.display();  
    s2.display();  
   }  
}

运行结果:

111 Karan
111 Karan

构造函数返回任何值?

是的,这是当前类的实例(你不能使用返回类型,但它返回一个值)。

构造函数可以执行其他任务而不是初始化吗?

是的,像对象创建,启动线程,调用方法等。你在方法中执行的任何操作都可以在构造函数中执行。

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效: 去购买


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/Java/constructor-in-java.html