返回顶部
首页 > 资讯 > 后端开发 > JAVA >什么是java构造函数
  • 912
分享到

什么是java构造函数

java入门java构造函数 2021-05-19 19:05:20 912人浏览 才女
摘要

构造函数是面向对象中的一员,构造函数可以叫做构造器,它的函数名与类名相同,不用定义返回值类型,也没有具体的返回值。构造函数是在构建创造时对象时调用函数,作用是可以给对象进行初始化,创建对象都必须要通过构造函数初始化。一个类中如果没有定义过构

构造函数是面向对象中的一员,构造函数可以叫做构造器,它的函数名与类名相同,不用定义返回值类型,也没有具体的返回值。构造函数是在构建创造时对象时调用函数,作用是可以给对象进行初始化,创建对象都必须要通过构造函数初始化。一个类中如果没有定义过构造函数,那么该类会有一个默认的空参数构造函数。如果在类中定义了指定的构造函数,那么该类中的默认构造函数就没有了。

我们人出生的时候,有些人一出生之后再起名字的,但是有些人一旦出生就已经起好名字的。那么我们在java里面怎么在对象一旦创建就赋值呢?

1573520891(1).jpg

1573520902(1).jpg

1.构造方法的作用:

构造方法作用:对对象进行初始化。

如图:

1573520923(1).jpg

2.构造函数与普通函数的区别:

(1)一般函数是用于定义对象应该具备的功能。而构造函数定义的是,对象在调用功能之前,在建立时,应该具备的一些内容。也就是对象的初始化内容。

(2)构造函数是在对象建立时由JVM调用, 给对象初始化。一般函数是对象建立后,当对象调用该功能时才会执行。

(3)普通函数可以使用对象多次调用,构造函数就在创建对象时调用。

(4)构造函数的函数名要与类名一样,而普通的函数只要符合标识符的命名规则即可。

(5)构造函数没有返回值类型。

3.构造函数要注意的细节:

(1)当类中没有定义构造函数时,系统会指定给该类加上一个空参数的构造函数。这个是类中默认的构造函数。当类中如果自定义了构造函数,这时默认的构造函数就没有了。

备注:可以通过javap命令验证。

(2)在一个类中可以定义多个构造函数,以进行不同的初始化。多个构造函数存在于类中,是以重载的形式体现的。因为构造函数的名称都相同。

class Perosn{
private int id;
private String name;
private int age;
public Perosn(){
cry();
}
public Perosn(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void cry(){
System.out.println("哇哇哇....");
}
}

问题:要求每个小孩出生都会哭,这份代码有两个构造函数,如果需要每个小孩出生都要哭的话,那么就需要在不同的构造函数中都调用cry()函数,但是这样子的话造成了代码重复问题,那么怎么解决呢?构造代码块。

4.构造代码块:

构造代码块作用:给所有的对象进行统一的初始化。

class Perosn{
private int id;
private String name;
private int age;
{
cry();// 每个Person对象创建出来都会执行这里的代码
}
public Perosn(){
cry();
}
public Perosn(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void cry(){
System.out.println("哇哇哇....");
}
}

具体作用:

给对象进行初始化。对象一建立就运行并且优先于构造函数。

与构造函数区别

(1)构造代码块和构造函数的区别,构造代码块是给所有对象进行统一初始化, 构造函数给对应的对象初始化。

(2)构造代码块的作用:它的作用就是将所有构造方法中公共的信息进行抽取。

例如孩子一出生统一哭

代码如下:

class Boy {
 
String name;
int age;
String gender;
     // 构造代码块,给所有对象进行初始化。
{
System.out.println("哭。。。");
}
     
Boy() {
System.out.println("无参构造");
}
 
Boy(String n, int a, String g) {
name = n;
age = a;
gender = g;
System.out.println("有参构造");
}
 
void run() {
System.out.println("跑...");
}
 
}
 
class Demo9 {
 
public static void main(String[] args) {
 
System.out.println();
Boy b = new Boy();
 
Boy b2 = new Boy("jack", 1, "男");
 
}
}

编程界网,大量的免费Java入门教程,欢迎在线学习

--结束END--

本文标题: 什么是java构造函数

本文链接: https://lsjlt.com/news/2876.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 什么是java构造函数
    构造函数是面向对象中的一员,构造函数可以叫做构造器,它的函数名与类名相同,不用定义返回值类型,也没有具体的返回值。构造函数是在构建创造时对象时调用函数,作用是可以给对象进行初始化,创建对象都必须要通过构造函数初始化。一个类中如果没有定义过构...
    99+
    2021-05-19
    java入门 java 构造函数
  • java中构造函数是什么
    构造函数是面向对象中的一员,构造函数可以叫做构造器,它的函数名与类名相同,不用定义返回值类型,也没有具体的返回值。构造函数是在构建创造时对象时调用函数,作用是可以给对象进行初始化,创建对象都必须要通过构造函数初始化。(推荐学习:java课程...
    99+
    2021-06-06
    java入门 java
  • C++的构造函数和析构函数是什么
    本篇内容主要讲解“C++的构造函数和析构函数是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++的构造函数和析构函数是什么”吧!目录一、构造函数二、C++类的内存模型1、只定义成员函数2、...
    99+
    2023-06-20
  • python构造函数指的是什么
    小编给大家分享一下python构造函数指的是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python的五大特点是什么python的五大特点:1.简单易学,开...
    99+
    2023-06-14
  • java怎么写构造函数
    java怎么写构造函数1、java构造函数也叫构造方法,是java中一种特殊的函数。函数名与类名相同,无返回值。作用:一般用来初始化成员属性和成员方法的,即new对象产生后,就调用了对象了属性和方法。(推荐教程:java教程 )二、构造函数...
    99+
    2016-05-29
    java基础 java 构造函数
  • php构造函数的写法是什么
    本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑构造函数(constructor method,也称为构造器)是类中的一种特殊函数,当使用 new 关键字实例化一个对象时,构造函数将会自动调用。在 PHP3.0 和 ...
    99+
    2020-10-08
    php 构造函数
  • es6中构造函数指的是什么
    今天小编给大家分享一下es6中构造函数指的是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2024-04-02
  • C++的拷贝构造函数是什么
    这篇文章主要介绍了C++的拷贝构造函数是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。拷贝构造函数用以将一个类的对象拷贝给同一个类的另一个对象,比如之前学习过的strin...
    99+
    2023-06-29
  • C++构造函数的特性是什么
    这篇文章主要介绍“C++构造函数的特性是什么”,在日常操作中,相信很多人在C++构造函数的特性是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++构造函数的特性是什么”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-02
  • C#中构造函数和析构函数的作用是什么
    本篇文章给大家分享的是有关C#中构造函数和析构函数的作用是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#构造函数(constructor)包括实例C#构造函数和静态C#...
    99+
    2023-06-17
  • C#中构造函数和析构函数的区别是什么
    这篇文章将为大家详细讲解有关C#中构造函数和析构函数的区别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#构造函数和析构函数在你可以访问一个类的方法、属性或任何其它东西之前, ***...
    99+
    2023-06-18
  • 【Java】 Java 中的构造函数
    本文仅供学习参考! 在任何面向对象的语言中,程序员都可以定义类并创建对象。在这些场景中,类成员需要一种初始化方法。构造函数是与类相关的特殊方法,它可以使用您想要的值初始化类的成员。 尽管构造函数...
    99+
    2023-10-05
    java 开发语言 构造函数 Java基础
  • 什么是java构造器?怎么使用构造器?
    1、怎么使用构造方法通过一个类创建一个对象,这个过程叫做实例化。实例化就是通过调用构造方法(又叫做构造器)实现的。1.1、什么是构造方法方法名和类名一样(包括大小写)没有返回类型实例化一个对象的时候,必然调用构造方法public class...
    99+
    2016-02-13
    java教程 构造器
  • Spring构造函数推断的原理是什么
    这篇文章主要介绍了Spring构造函数推断的原理是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Spring构造函数推断的原理是什么文章都会有所收获,下面我们一起来看看吧。正文Spring 提供了一组基本的...
    99+
    2023-07-05
  • C++中构造函数和析构函数有什么作用
    构造函数是一种特殊的成员函数,用于在创建对象时初始化对象的数据成员。构造函数的作用是初始化对象的状态,为对象的数据成员赋初值,确保对...
    99+
    2024-03-11
    C++
  • JavaScript知识:构造函数也是函数
    目录1、构造函数的定义与调用2、new关键字的用途3、构造函数的问题:浪费内存总结首先要明确的是构造函数也是函数 我经常使用构造函数来创建实例对象,例如对象和数组的实例化可以通过相应...
    99+
    2024-04-02
  • python中构造函数有什么用
    python中构造函数的作用有以下几点构造函数主要用于在类的对象创建时定义初始化的状态,它没有返回值,也不能用void来修饰。构造函数可以给创建的对象建立一个标识符。构造函数可以为对象数据成员开辟内存空间。构造函数可以完成对象数据成员的初始...
    99+
    2024-04-02
  • C++语言中构造函数的作用是什么
    C++语言中构造函数的作用是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在C++语言中一个函数可以调用其他函数,在设计良好的C++语言中,每个函数都有特定的目的,就是...
    99+
    2023-06-17
  • CLR Via C#调用静态构造函数是什么
    本篇内容主要讲解“CLR Via C#调用静态构造函数是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CLR Via C#调用静态构造函数是什么”吧!CLR Via C#总结:1 静态构造函...
    99+
    2023-06-17
  • C++11中 constexpr构造函数的作用是什么
    这期内容当中小编将会给大家带来有关C++11中 constexpr构造函数的作用是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。聚合类聚合类(aggregate class)允许利用者直接访问其成员,...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作