JAVA中构造方法和普通方法的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中构造方法和普通方法的区别相关的知识,希望对你有一定的参考价值。
虽然知道构造方法,方法名和类名要一样,且没有返回值,系统会自动隐式生成。但是构造方法和普通方法有什么区别呢,它们在其他类调用时都需要new ,普通方法也可以进行成员属性的定义和初始化,那构造方法在java中起到的作用是什么?如果说普通方法在使用上完全可以代替构造方法的话 ,那他存在的意义是什么啊?我该在什么时候用构造方法合适嘞!!!
1.构造函数的命名必须和类名完全相同;在java中普通函数可以和构造函数同名,但是必须带有返回值。2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点 参考技术A 构造方法是你创建对象时自动调用的,普通方法需要对象去调用,只要你创建对象就一定会调用构造方法,你可以显式的指定某个构造方法,如果不指定就调用默认的 参考技术B 只有构造方法才能new,用于生成实例对象,分配内存空间等。
普通方法是不能new 的,可以通过对象名来调用。在对象有内存空间后可以处理类成员变量和调用其他的方法。
拿个不算恰当的比喻来说,
构造方法相当于给你开房间,普通方法是进房间后在自己的权限内随便玩,设置可以开另外一个房间。没有房间之前,普通方法无用武之地。本回答被提问者和网友采纳 参考技术C 刚学时也迷糊过。构造方法是用来实例化该类的具体对象的。而普通方法是对象的动作 参考技术D 一:构造方法,
说的是构造,你知道构造一个类吧,这个构造的方法就是在已经构造的类下,用构造的类名来构造的方法叫构造方法,列如;public class Location (这个是我构造的类,类名叫Location),
package newpackage;
public class Location
,如果你要构造一个方法出来(构造方法),就得Location location=Locati();
这个就是我构造一个对象(location)。
package newpackage;
public class Newclass
public static void main(String[] args)
;
Location location=Locati(a);
public static Location Locati(double (参数类型)a) //这个就是构造方法
public static 普通方法(double (参数类型)a) //这个就是普通方法方法
以上是我个人的理解 如果又不对的地方,请多多指教,,,,谢谢了
JAVA中构造方法和普通方法的区别是啥?
虽然知道构造方法,方法名和类名要一样,且没有返回值,系统会自动隐式生成。但是构造方法和普通方法有什么区别呢,它们在其他类调用时都需要new ,普通方法也可以进行成员属性的定义和初始化,那构造方法在java中起到的作用是什么?如果说普通方法在使用上完全可以代替构造方法的话 ,那他存在的意义是什么?我该在什么时候用构造方法合适?
只有构造方法才能new,用于生成实例对象,分配内存空间等。普通方法是不能new 的,可以通过对象名来调用。在对象有内存空间后可以处理类成员变量和调用其他的方法。
拿个不算恰当的比喻来说,
构造方法相当于给你开房间,普通方法是进房间后在自己的权限内随便玩,设置可以开另外一个房间。没有房间之前,普通方法无用武之地。 参考技术A 构造方法是在对象实例化的时候调用的方法,负责对类对象属性的初始化,优先执行于所有普通方法,在类当中可以不写构造方法,此时系统会自动添加不可见的默认构造方法。
以上是关于JAVA中构造方法和普通方法的区别的主要内容,如果未能解决你的问题,请参考以下文章