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构造函数的三种类型总结的文章就介绍到这了,更多相关java构造函数的类型内容搜索编程之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程之家!

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...