默认构造函数和参数化构造函数有什么区别

目录:

Anonim

默认构造函数是一种构造函数,当程序员在程序中没有定义任何构造函数时会自动调用它。相比之下,参数化构造函数是程序员定义的一种构造函数,通过传递参数给类中的实例变量赋予初始值。 那就是 主要区别 在默认构造函数和参数化构造函数之间。

大多数高级编程语言都支持面向对象编程 (OOP)。在 OOP 中,一切都是一个类,它有助于构建对象。这些对象在程序中相互通信。构造函数是 OOP 中的一个概念。它是一种特殊的方法,允许在创建对象时对其进行初始化。构造函数可以是默认的,也可以是参数化的。

构造函数、默认构造函数、OOP、参数化构造函数

什么是默认构造函数

构造函数在创建对象时被调用。它还为该对象分配内存。此外,它有助于为类中的实例变量赋予初始值。如果程序员没有定义构造函数,程序会自动调用默认构造函数。它将所有成员变量初始化为零或空值。

图 1:使用默认构造函数的程序

在上面的程序中,有一个 Student 类。它有两个实例变量作为 id 和 name。程序员没有定义任何构造函数。此外,在 main 方法中有一个 student 对象。最后,在控制台上打印 id 和 name。由于程序员没有定义任何构造函数,程序调用默认构造函数。它将 id 初始化为 0,将 name 初始化为 null。

什么是参数化构造函数

参数化构造函数是接受参数的构造函数。可以有一个或多个参数。当存在参数化构造函数时,程序不会调用默认构造函数。此外,程序员可以在构造函数名称后的括号内声明参数。

图 2:带有参数化构造函数的程序

上面是一个叫做Calculation的类。它有两个名为 num1 和 num2 的实例变量。在第 7 行,有一个参数化构造函数。它接受两个参数 x 和 y,并将这些值分配给实例变量 num1 和 num2。

此外,还有一种方法叫做 sum。它将返回这两个数字的总和。在main方法中有一个Calculation对象。使用 obj1 调用 sum 方法。最后,结果打印在控制台上。

默认构造函数和参数化构造函数的区别

定义

默认构造函数是编译器在没有任何程序员定义的构造函数的情况下自动生成的构造函数。相反,参数化构造函数是程序员用一个或多个参数创建的构造函数,用于初始化类的实例变量。因此,这解释了默认构造函数和参数化构造函数之间的主要区别。

参数数量

参数是默认构造函数和参数化构造函数之间的主要区别。默认构造函数没有参数,而参数化构造函数具有一个或多个参数。

调用方法

如果程序员跳过编写构造函数,程序会自动调用默认构造函数。另一方面,程序员在编写参数化构造函数时应该编写自己的构造函数。

结论

默认构造函数是一种构造函数,当程序员在程序中没有定义任何构造函数时会自动调用它。相比之下,参数化构造函数是程序员定义的一种构造函数,通过传递参数给类中的实例变量赋予初始值。这是默认构造函数和参数化构造函数之间的主要区别。

参考:

1. “Java 构造函数——Javatpoint”。 www.javatpoint.com ,可在此处获得。

默认构造函数和参数化构造函数有什么区别