JAVA中构造方法和普通方法的区别是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中构造方法和普通方法的区别是啥?相关的知识,希望对你有一定的参考价值。

虽然知道构造方法,方法名和类名要一样,且没有返回值,系统会自动隐式生成。但是构造方法和普通方法有什么区别呢,它们在其他类调用时都需要new ,普通方法也可以进行成员属性的定义和初始化,那构造方法在java中起到的作用是什么?如果说普通方法在使用上完全可以代替构造方法的话 ,那他存在的意义是什么?我该在什么时候用构造方法合适?

只有构造方法才能new,用于生成实例对象,分配内存空间等。
普通方法是不能new 的,可以通过对象名来调用。在对象有内存空间后可以处理类成员变量和调用其他的方法。

拿个不算恰当的比喻来说,
构造方法相当于给你开房间,普通方法是进房间后在自己的权限内随便玩,设置可以开另外一个房间。没有房间之前,普通方法无用武之地。
参考技术A 构造方法是在对象实例化的时候调用的方法,负责对类对象属性的初始化,优先执行于所有普通方法,在类当中可以不写构造方法,此时系统会自动添加不可见的默认构造方法。

Java中方法重载和构造方法的区别

方法重载就是同一个类中,有多个方法,方法名是一样的,但是形参不一样,调用的时候,程序会根据传入的形参不同,而选择对应的方法。例如void a() 和 void a(String b)和void a(int b)就是重载的三个方法。
构造方法也叫构造器,它也是一种方法,也可以重载,它的方法名与类名相同,不用写返回值,也不用加void。例如
class a
public a()

另外构造器是在创建此类的对象的时候就会调用的,它的作用是初始化类的对象。 如果你没有为类写构造器,JAVA虚拟机自动为类添加一个无参数的构造器,只是你看不到。
参考技术A 方法重载是让类以统一的方式处理不同类型数据的一种手段。Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法, 这就是多态性

构造方法的名字必须与类名同名,大小写也必须完全一致
构造方法没有返回值类型
一个类的构造方法,可以有多个,主要靠参数区别本回答被提问者采纳
参考技术B 构造方法主要用于初始化对象,重载主要是针对方法而言的,例如杂技师训练动物,对于不同的动物有不同的训练方法,虽然都是方法名都是训练,但是具体的实现还要看传入的参数是狗,还是猫,还是其他的

以上是关于JAVA中构造方法和普通方法的区别是啥?的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中构造方法和普通方法的区别

JAVA中构造方法和普通方法的区别

Java中的构造方法与普通方法的区别? 啥情况下用构造方法啥情况下用普通的方法

Java中方法重载和构造方法的区别

Java中构造方法跟普通方法的区别?

java 自定义构造方法,默认函数,看下面的例子,作用,区别,是啥?