JAVA中构造方法和普通方法的区别
虽然知道构造方法,方法名和类名要一样,且没有返回值,系统会自动隐式生成。但是构造方法和普通方法有什么区别呢,它们在其他类调用时都需要new,普通方法也可以进行成员属性的定...
虽然知道构造方法,方法名和类名要一样,且没有返回值,系统会自动隐式生成。但是构造方法和普通方法有什么区别呢,它们在其他类调用时都需要new ,普通方法也可以进行成员属性的定义和初始化,那构造方法在java中起到的作用是什么?如果说普通方法在使用上完全可以代替构造方法的话 ,那他存在的意义是什么啊?我该在什么时候用构造方法合适嘞!!!
展开
展开全部
1.构造函数的命名必须和类名完全相同;在java中普通函数可以和构造函数同名,但是必须带有返回值。
2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点
2.构造函数的功能主要用于在类的对象创建时定义初始化的状态.它没有返回值,也不能用void来修饰.这就保证了它不仅什么也不用自动返回,而且根本不能有任何选择.而其他方法都有返回值.即使是void返回值,尽管方法体本身不会自动返回什么,但仍然可以让它返回一些东西,而这些东西可能是不安全的.
3.构造函数不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用.
4.当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过Java编译器会提供一个默认的构造函数.此默认构造函数是不带参数的.而一般方法不存在这一特点
展开全部
构造方法是你创建对象时自动调用的,普通方法需要对象去调用,只要你创建对象就一定会调用构造方法,你可以显式的指定某个构造方法,如果不指定就调用默认的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只有构造方法才能new,用于生成实例对象,分配内存空间等。
普通方法是不能new 的,可以通过对象名来调用。在对象有内存空间后可以处理类成员变量和调用其他的方法。
拿个不算恰当的比喻来说,
构造方法相当于给你开房间,普通方法是进房间后在自己的权限内随便玩,设置可以开另外一个房间。没有房间之前,普通方法无用武之地。
普通方法是不能new 的,可以通过对象名来调用。在对象有内存空间后可以处理类成员变量和调用其他的方法。
拿个不算恰当的比喻来说,
构造方法相当于给你开房间,普通方法是进房间后在自己的权限内随便玩,设置可以开另外一个房间。没有房间之前,普通方法无用武之地。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
刚学时也迷糊过。构造方法是用来实例化该类的具体对象的。而普通方法是对象的动作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一:构造方法,
说的是构造,你知道构造一个类吧,这个构造的方法就是在已经构造的类下,用构造的类名来构造的方法叫构造方法,列如;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){ }//这个就是普通方法方法
}
以上是我个人的理解 如果又不对的地方,请多多指教,,,,谢谢了
说的是构造,你知道构造一个类吧,这个构造的方法就是在已经构造的类下,用构造的类名来构造的方法叫构造方法,列如;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){ }//这个就是普通方法方法
}
以上是我个人的理解 如果又不对的地方,请多多指教,,,,谢谢了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询