1) 什么是构造函数?
--->在Java中,构造函数是类似于方法的代码块。当创建类的实例时调用它。调用构造函数时,会在内存中分配对象的内存。
--->它是一种特殊类型的方法,用于初始化对象。
--->每次使用 new 关键字创建对象时,都会至少调用一个构造函数。
--->如果类中没有可用的构造函数,它将调用默认构造函数。在这种情况下,Java编译器默认提供了一个默认构造函数。
定义构造函数有以下规则:
2) 构造函数的类型
Java 中的构造函数分为三种类型:
1。 Java 中的默认构造函数
没有参数的构造函数称为默认构造函数。默认构造函数是不可见的。如果我们编写一个不带参数的构造函数,编译器不会创建默认构造函数。它被取出来。它被重载并被称为参数化构造函数。默认构造函数更改为参数化构造函数。但参数化构造函数不能更改默认构造函数。默认构造函数可以是隐式的或显式的。
隐式默认构造函数:如果类中没有定义构造函数,Java编译器会自动提供默认构造函数。该构造函数不带任何参数,并使用默认值初始化对象,例如数字为 0,对象为 null。
显式默认构造函数:如果我们定义一个不带参数的构造函数,则称为显式默认构造函数。该构造函数替换了编译器通常自动创建的构造函数。一旦定义了任何构造函数(带或不带参数),编译器就不再为您提供默认构造函数。
2。 Java中的参数化构造函数
具有参数的构造函数称为参数化构造函数。如果我们想用我们自己的值初始化类的字段,那么使用参数化构造函数。
3。 Java 中的复制构造函数 [TBD]
与其他构造函数不同,复制构造函数与另一个对象一起传递,该对象将可用数据从传递的对象复制到新创建的对象。
3) 什么是构造函数重载?
构造函数重载可以定义为具有多个具有不同参数的构造函数的概念,以便每个构造函数可以执行不同的任务。
Java 除了重载方法之外还支持构造函数重载。在Java中,重载的构造函数是根据执行new时指定的参数来调用的。有时需要以不同的方式初始化对象。这可以使用构造函数重载来完成。
4) “this”关键字有什么用?
“this”关键字指的是方法或构造函数中的当前对象。
“this”关键字最常见的用途是消除类属性和同名参数之间的混淆(因为类属性被方法或构造函数参数隐藏)。
“这个”也可以用于:
参考
https://www.javatpoint.com/java-constructor
https://www.geeksforgeeks.org/constructors-in-java/
https://www.javatpoint.com/constructor-overloading-in-java
https://www.geeksforgeeks.org/constructor-overloading-java/
https://www.w3schools.com/java/ref_keyword_this.asp
以上是构造函数的详细内容。更多信息请关注PHP中文网其他相关文章!