技术文章 > java >  java基础 > 正文

java构造函数的三种类型

小妮浅浅

我们说构造函数能处理参数的问题,但其实也要分三种情况进行讨论。目前有三种类型:无参、有参和默认。根据不同的参数情况,需要我们分别进行构造函数的讨论。这里重点是无参构造函数的初始化也要分两种方法进行分析。下面我们就这三种不同的构造函数类型分别为大家进行展示。

1.无参构造函数

不带入参的构造函数叫无参构造函数,对类的成员初始化有两种方法:

1)在类成员变量声明时进行初始化

public class MyClass {
    private String name = "Jerry";
    private int id = 1;
 
    public MyClass()
    {
    }
}

2)在无参构造函数的方法体里对类成员变量初始化

public class MyClass {
    private String name;
    private int id;
 
    public MyClass()
    {
        this.name = "Jerry";
        this.id = 1;
    }
}

2.有参构造函数

带入参的构造函数叫有参构造函数。

public class Employee {
 
int empId;
String empName;
 
//parameterized constructor with two parameters
Employee(int id, String name){
this.empId = id;
this.empName = name;
}
void info(){
System.out.println("Id: "+empId+" Name: "+empName);
}
 
public static void main(String args[]){
Employee obj1 = new Employee(10245,"Chaitanya");
Employee obj2 = new Employee(92232,"Negan");
obj1.info();
obj2.info();
}
}

输出:

Id: 10245 Name: Chaitanya
Id: 92232 Name: Negan

当类里没有显式地定义代码来实现任何构造函数时,Java编译器将会在编译的字节码(.class文件)里面为这个类插入默认构造函数。由于是在编译阶段插入,因此在源文件(.java)里是不会找到默认构造函数的代码的。

3.默认构造函数

默认构造函数形式上类似无参构造函数(都没有入参),但是二者并不能划等号,区别如下:

默认构造函数方法体为空,无参构造函数方法体可以为空也可以不为空;

只要类里显式的创建了一个构造函数,比如一个无参构造函数,编译器都不会再为这个类创建默认构造函数了。

以上就是java中构造函数的三种类型,大家可以根据其中的参数情况,对构造函数进行判断。对基础概念不了解的,可以结合代码示例练习和体会。

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 java枚举中线程的实现
 java中构造函数的用法规则
 java中使用构造函数的好处
相关视频章节
 网络爬虫
 云端部署Web应用程序视频
 Web应用框架Flask和文件模板
 Web应用程序开发概述
 继承和多态
作者信息
推荐视频
视频教程分类