什么叫构造方法?_构造方法和普通方法之间的区别

什么叫构造方法?_构造方法和普通方法之间的区别构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。

定义:在Java中,任何 变量在被使用前都必须先设置初值.Java提供了为类的 成员变量赋初值的专门方法。

特殊性:构造方法是一种特殊的成员方法,它的特殊性反映在如下几个方面:

1.构造方法作用:(1).构造出来一个类的实例 (2).对构造出来个一个类的实例(对象)初始化。

2.构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。

3.主要完成对象的初始化工作,构造方法的调用是在创建一个对象时使用new操作进行的。

4.类中必定有构造方法,若不写,系统自动添加无参构造方法。接口不允许被实例化,所以接口中没有构造方法。

5.不能被static、final、synchronized、abstract和native修饰。

6.构造方法在初始化对象时自动执行,一般不能显式地直接调用.当同一个类存在多个构造方法时,java编译系统会自动按照初始化时最后面括号的参数个数以及参数类型来自动一一对应。完成构造函数的调用。

7.构造方法分为两种:无参构造方法 有参构造方法

构造方法可以被重载。没有参数的构造方法称为 默认构造方法,与一般的方法一样,构造方法可以进行任何活动,但是经常将他设计为进行各种初始化活动,比如初始化对象的属性。

8.构造代码块:   (1)作用:给对象进行初始化,对象一建立就执行,而且优先于构造函数执行   (2)构造代码块和构造函数的区别:   构造代码块是给所有不同对象的共性进行统一初始化,构造函数是给对应的对象进行初始化

9.子类继承父类中,   ***子类的实例化过程   ***构造方法不能被子类继承   ***子类创建对象时,会先去创建父类的对象。   默认是去调用父类的无参构造方法。   ***子类构造方法中,第一行默认是super()   ***为什么子类中第一行会默认有super()   因为他继承父类的成员使用,使用前这些成员必须初始化,   而他们是父类的成员,所以,必须通过父类进行初始化。   所以,会先创建一个父类的对象。   **当父类没有无参构造方法时

必须使用this或者super调用其他的构造方法。

10.自定义类中,如果不写构造方法,java系统会默认添加一个无参的构造方法。如果写了一个有参的构造方法,就一定要写无参构造方法。   如果想使用无参的构造方法,就必须手动给出无参构造方法。   建议:一般情况下,我们自定义的类都要手动给出无参构造方法。

具体使用:分别计算长、宽为20、10和6、3的两个长方形的面积。

class RectConstructor{

double length;

double width;

double area(){

return length*width;

}

RectConstructor(double width,double length){//带参数的构造方法

this.length=length;

this.width=width;

}

}

public class RectDemo{

public static void main(String args[]) {

RectConstructor rect1=new RectConstructor(10,20);

RectConstructor rect2=new RectConstructor(3,6);

double ar;

ar=rect1.area();

System.out.println("第一个长方形的面积是"+ar);

ar=rect2.area();

System.out.println("第二个长方形的面积是"+ar);

}

}

控制台输出结果为:

第一个长方形的面积是200

第二个长方形的面积是18

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167646.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JDK 1.8 Stream Collectors groupingBy 例子[通俗易懂]

    JDK 1.8 Stream Collectors groupingBy 例子[通俗易懂]在这篇文章中,我们将向您展示如何使用java8 Stream Collectors 对列表分组,计数,求和和排序。1.GroupBy,CountandSort1.1Groupbya List anddisplaythetotalcountofit.(按列表分组,并显示其总数)Java8Example1.javapackagecom.mkyong.java8;i…

    2022年8月20日
    19
  • 数据中心部署模式二元化

    数据中心部署模式二元化

    2021年9月1日
    60
  • linux三剑客老二sed的增、删、改、查

    linux三剑客老二sed的增、删、改、查

    2021年9月17日
    60
  • 数据仓库ODS层的作用

    数据仓库ODS层的作用ODS(OperationalDataStore)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。  一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用:  1)在业务系统和数据仓库之间形成一个隔离层  一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同

    2022年10月5日
    3
  • int使用规则_point是什么意思

    int使用规则_point是什么意思先说结论吧,方便快速查询验证。总结区别int类型大小为8字节int8类型大小为1字节int16类型大小为2字节int32类型大小为4字节int64类型大小为8字节go语言中的int的大小是和操作系统位数相关的,如果是32位操作系统,int类型的大小就是4字节;如果是64位操作系统,int类型的大小就是8个字节取值范围int8:-128~127int16:-32768~32767int32:-2147483648~214

    2022年8月15日
    6
  • 又拍云服务评測分享

    又拍云服务评測分享

    2021年11月16日
    70

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号