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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈雪平 中级黑马   /  2013-1-25 21:28  /  2176 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张向辉 于 2013-1-26 11:33 编辑

今天复习以前听的视频,发现个不理解的问题,请教一下高手:
构造器不是没有返回值吗,为啥不能用void修饰呢??

评分

参与人数 1黑马币 +8 收起 理由
李培根 + 8 赞一个!

查看全部评分

5 个回复

倒序浏览
支持下美女,技术上不行就不给答案了。。。
回复 使用道具 举报
 构造函数是对象被创建时初始化对象的成员函数。它具有和它所在的类完全一样的名字。一旦定义好一个构造函数,创建对象时就会自动调用它。构造函数没有返回类型,即使是void类型也没有。这是因为一个类的构造函数的返回值的类型就是这个类本身。构造函数的任务是初始化一个对象的内部状态,所以用new操作符创建一个实例后,立刻就会得到一个清楚、可用的对象。
回复 使用道具 举报
  这个是规定吧- -!记住就行了,不过刚才发现一个有意思的现象,构造器里也可以有return语句:
  1. public class NewTest {
  2.         public static void main(String[] args) {
  3.                 System.out.println(new Person());
  4.         }
  5.         public static void test(){
  6.                 return;
  7.         }
  8. }
  9. class Person{
  10.         public Person(){
  11.                 return;
  12.         }
  13. }
复制代码
回复 使用道具 举报
应该每个方法里默认都由一个return语句吧。我感觉是。不知道到底是不是,请高手指点一二
回复 使用道具 举报
本帖最后由 张向辉 于 2013-1-26 11:31 编辑

java的构造函数格式  就是没有返回类型修饰符  void是一种返回类型修饰符   
如果硬要在构造函数前加修饰符, jvm会把它当做普通方法处理。  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马