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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hejinzhong 中级黑马   /  2014-7-8 23:45  /  946 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

(1)构造函数是类中没有函数类型、没有返回语句、与类名同名的一个函数。
(2)一般函数就只为了实现某个功能的代码块。有自己的类型和return语句,且名字可以自己随意指定。
有这么个问题,就是都知道构造函数只是在创建对象实体的时候去运行,为该实体初始化相关的参数。而一般函数是可以无限调用。我想问,为什么构造函数也是一个函数,有自己的名字,为什么不能调用呢?为什么只是系统自动去运行,为对象初始化。若我们手动去调用可以否?

写个例子好明白点,疑问所在。
class Student
{
    String name = "zhangsan";
    int age;
    Student()
   {
        System.out.println(name+"+"+age);
  }
   Student(int a)
  {
    SetAge(a);
     System.out.println(name+"+"+age);
  }
  void SetAge(int a)
  {
    age=a;
  }
}

class Demo
{
    public static void main(String[] args)
    {
      Student s = new Student(15);
      s.SetAge(18);//这个是调用类中的一般函数。
      s.Student();//这为什么不可以调用构造函数,构造函数一直存在?
    }
}

//我的编译是找不到函数 Student()

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马