关于java构造方法

来源:8-10 Java 中的 static 使用之静态初始化块

枫中看雨

2016-06-04 20:11

在java中,是不是一个类只有一个构造方法?且名字和类名相同(后面加初始化块)?或者说名字和类名相同的方法就是构造方法?构造方法和普通的方法有何不同?我怎么看都觉得构造方法除了后面加了初始化块其它的都差不多啊!求详细解释!!!

写回答 关注

2回答

  • 慕哥3444724
    2016-06-04 20:29:26

    构造函数可以是多个,用于不同对象进行针对性初始化。多构造函数以重载的形式体现。

    构造函数与一般函数的区别:

            1、构造函数:对象创建时,就会调用与之对应的构造函数并对对象初始化。

                一般函数:对象创建后,需要函数时才调用。

            2、构造函数:对象创建时,会调用只调用一次。

                  一般函数:对象创建后可以被多次调用。

  • 云巅之上
    2016-06-04 20:23:33

    方法重载知道么?就是方法名一样,但参数不一样,会根据你输入参数的类型自动判断用哪一个构造方法

    比如  HelloWorld(int a){}  和 HelloWorld(double a){},根据创建对象时输入的值的类型确定进入哪一个构造方法


    云巅之上 回复云巅之上

    对了,初始化块这方面就是一个公共的,不管你构造函数需要写入的是什么类型的参数,都会调用,且在构造函数前执行,而静态初始化块只会执行一次,即不管你创建几个对象,只会在第一次创建对象是被执行;所以非静态初始化块就是每次创建新的对象都会重新执行一遍。

    2016-06-05 00:03:20

    共 3 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530644 学习 · 6091 问题

查看课程

相似问题