A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

构造方法为什么要和类名一致,关于构造方法的问题还是不很明白,继续问,求解释

6 个回复

倒序浏览
这就是java规定的格式,没什么好解释的吧,没原因,就是规定,非要说的话,就是只有写成这样,虚拟机才认你是构造函数
回复 使用道具 举报
在Java中,任何变量在被使用前都必须先设置初值。Java提供了为类的成员变量赋初值的专门功能,也就是说构造方法是用于成员变量的初始化的。java是这样规定构造方法的:
1.构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。   
2.构造方法的调用是在创建一个对象时使用new操作进行的。构造方法的作用是初始化对象。   
3.每个类可以有零个或多个构造方法.   
4.不能被static、final、synchronized、abstract和native修饰。构造方法不能被子类继承。   
5.构造方法在创建对象时自动执行,一般不能显式地直接调用.

评分

参与人数 1技术分 +1 收起 理由
职业规划-刘倩老师 + 1 赞一个!

查看全部评分

回复 使用道具 举报
同意楼上,要非要说为什么个人理解:你要创建这个类的对象比如new Person(); 这时候如果构造方法不和他的类名一样,那么他也就不知道去创建哪个类的对象了。 要是person类的构造方法是Student()那么岂不是实例化了一个student对象了。
回复 使用道具 举报
构造方法,顾名思义,就是说你要去怎样构造一个类,但是编译器如何知道你怎样创建一个类,创建一个什么样的类呢?构造此类你要使用什么样的参数,返回什么样的类型,这都是要你在构造方法中指明写清楚的
建议你看一下在变量方法在初始化中的顺序,类的复用中组合继承的关系,能更好的帮你理解构造方法
回复 使用道具 举报
我是这样理解的,首先你说的是构造方法和类名一致,一致也就是完全相匹配,类也就是种类。人类、动物类、汽车类。。。这些类都有他们自己的行为,构造方法也是这些类中能实现的功能与作用,比如,人类说话,动物类不说话,说话就是一个构造方法,若说话和人类相一致,你调用时就会得到想要的结果。若和动物类其他类相一致,那就是所有的种类都会说话了,这不符合实际而且很荒谬。构造方法和类名一致就像你的名字和姓氏一致那么简单。。。。多看看多练练找出适合自己理解的思路就OK。。。。。希望对你有些帮助。。。加油吧。。。
回复 使用道具 举报
黄奇耀 发表于 2012-3-9 09:24
在Java中,任何变量在被使用前都必须先设置初值。Java提供了为类的成员变量赋初值的专门功能,也就是说构造 ...

多谢,基本上能够理解了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马