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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 明天你好 中级黑马   /  2014-2-26 22:25  /  857 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

早构造方法是,前面有的加的是void ,int  string  等,那么什么时候改用void,神恶魔时候不用void呢,是根据构造方法的返回值类型而定吗

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

4 个回复

倒序浏览
构造方法是一种特殊方法,他的名字必须与他所在的类的名字完全相同,而且没有类型
java允许一个类中有若干个构造方法,但这些构造方法的参数必须不同,或者参数的类型不同,或者参数的个数不同

  1. public class Rect {

  2.         double sideA,sideB;
  3.         Rect(){}
  4.         Rect(double a,double b){
  5.                 sideA=a;
  6.                 sideB=b;
  7.                
  8.         }
  9.         double computerArea(){
  10.                 return sideA*sideB;
  11.         }
  12.        
  13.         double computerGirth(){
  14.                 return (sideA+sideB)*2;
  15.         }
  16. }
复制代码



评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
yunzhongzhuhuo 发表于 2014-2-26 22:44
构造方法是一种特殊方法,他的名字必须与他所在的类的名字完全相同,而且没有类型
java允许一个类中有若干 ...

我打错了,应该是构造函数,我主要是想知道void的用法,什么时候用,什么时候不用
回复 使用道具 举报
构造方法/构造函数有返回值的吗?
回复 使用道具 举报
void就是一个 类型而已,如果写的函数不想要返回值,就用void类型,如果要返回值,就要加上其返回类型
  1. public class test1 {

  2.         public static void main(String[] args) {
  3.                 // TODO Auto-generated method stub
  4.                 //调用函数,并打印返回值
  5.                 System.out.println(fac(10));
  6.                 sop(fac(10));
  7.         }

  8.        
  9.         public static int fac(int n)//这个是需要有返回值的,它是计算斐波那契的函数
  10.         {
  11.                 //如果n值等于1或者2就返回1
  12.                 if(n==1||n==2)
  13.                         return 1;
  14.                 //否则返回递归调用此方法的和
  15.                 else
  16.                         return fac(n-1)+fac(n-2);
  17.         }
  18.        
  19.         public static void sop(Object obj){//这个方法只是负责打印的
  20.                 System.out.println(obj);
  21.         }
  22. }
复制代码

所以说:用不用void,关键看你的函数是否需要返回值
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马