何为构造函数

简介: Java构造函数,也叫构造方法,是Java中一种特殊的函数。函数名与对应类名相同,无返回值。

Java构造函数,也叫构造方法,是Java中一种特殊的函数。函数名与对应类名相同,无返回值。

构造函数的作用


先不去管这个构造函数是什么,我们先来了解这个玩意有什么用!

构造函数的最大作用就是创建对象时完成初始化,当我们在new一个对象并传入参数的时候,会自动调用构造函数并完成参数的初始化

一般来说初始化成员属性和成员方法的,即new对象产生后,就调用了对象了属性和方法

如何构造方法


public class Demo {
    public static void main(String[] args) {
        //输出Hello World。new对象一建立,就会调用对应的构造函数Confun(),并执行其中的println语句。
        Confun c1=new Confun();
    }
}
class Confun{
    //定义构造函数,输出Hello World
    Confun(){
        System.out.println("Hellow World");
    }
}

网络异常,图片无法展示
|

运行上面这些代码时,认真看,main方法里面是没有输出语句的,只是单纯的new了一个对象。但是我们看下面,确确实实输出了一个Hello World。

这是为何?

我们上面就说了,为何需要构造方法呢?——>构造函数的最大作用就是创建对象时完成初始化

初始化,说白了就是在new一个对象时就同时运行构造方法里面的代码,像这里,在new对象时就运行了Confun方法里面的语句。

所以,这里这个Hello World就是这么来的。这也就是构造方法

构造函数规则


最后在说一说构造函数需要的规则。

  • 构造函数与类同名
  • 每个类可以有一个以上的构造函数
  • 构造函数可以有0 个 、 1 个或多个参数
  • 构造函数没有返回值
  • 构造函数总是伴随着new操作一起调用

带参构造


大家理解之后,发现。

它不就是一个方法吗?只不过加了5个规范,那是方法就可以如同方法一样,携带参数,那这里我就不多说了。

相关文章
|
5月前
|
编译器 C++
C++ | 谈谈构造函数的初始化列表
C++ | 谈谈构造函数的初始化列表
34 0
|
26天前
|
存储 编译器 C++
【C++成长记】C++入门 | 类和对象(上) |类的作用域、类的实例化、类的对象大小的计算、类成员函数的this指针
【C++成长记】C++入门 | 类和对象(上) |类的作用域、类的实例化、类的对象大小的计算、类成员函数的this指针
|
26天前
|
编译器 C++
【C++成长记】C++入门 | 类和对象(中) |类的6个默认成员函数、构造函数、析构函数
【C++成长记】C++入门 | 类和对象(中) |类的6个默认成员函数、构造函数、析构函数
|
2月前
|
存储 编译器 C语言
【C++练级之路】【Lv.2】类和对象(上)(类的定义,访问限定符,类的作用域,类的实例化,类的对象大小,this指针)
【C++练级之路】【Lv.2】类和对象(上)(类的定义,访问限定符,类的作用域,类的实例化,类的对象大小,this指针)
|
2月前
|
安全 C++
c++类和对象一对象特性一构造函数和析构函数
c++类和对象一对象特性一构造函数和析构函数
8 0
|
3月前
|
编译器 C语言 C++
C++类和对象的细节原理:this指针、构造函数和析构函数、深浅拷贝、运算符重载、初始化列表、类的各种成员和方法
C++类和对象的细节原理:this指针、构造函数和析构函数、深浅拷贝、运算符重载、初始化列表、类的各种成员和方法
38 0
|
5月前
|
Java
Java面向对象编程,构造函数和方法的区别是什么?
Java面向对象编程,构造函数和方法的区别是什么?
45 2
|
10月前
|
存储 算法 安全
04-📝C++核心语法|面向对象2【友元、内部类与局部类、强化训练(数组类封装)、运算符重载、仿函数、模板、类型转换、 C++标准、错误&&异常、智能指针】
复习`C++核心语法`,且适当进行汇编探索底层实现原理,进一步夯实基础,为以后的`底层开发`、`音视频开发`、`跨平台开发`、`算法`等方向的进一步学习埋下伏笔。
04-📝C++核心语法|面向对象2【友元、内部类与局部类、强化训练(数组类封装)、运算符重载、仿函数、模板、类型转换、 C++标准、错误&&异常、智能指针】
|
10月前
|
存储 编译器 C语言
【C++学习】类和对象 | 再谈构造函数 | 构造函数中的隐式类型转换 | static静态成员
【C++学习】类和对象 | 再谈构造函数 | 构造函数中的隐式类型转换 | static静态成员
64 0
|
12月前
|
存储 编译器 C语言
【c++】类和对象:让你明白“面向一个对象有多重要”:构造函数,析构函数,拷贝构造函数的深入学习(上)
【c++】类和对象:让你明白“面向一个对象有多重要”:构造函数,析构函数,拷贝构造函数的深入学习(上)
41 0