黑马程序员技术交流社区

标题: return返回一个对象,是给那个对象赋值么 [打印本页]

作者: 绕世界流浪丶    时间: 2013-11-14 21:14
标题: return返回一个对象,是给那个对象赋值么
本帖最后由 绕世界流浪丶 于 2013-11-15 17:49 编辑

return返回一个对象,是给那个对象赋值么?
  1. private int age;
  2. public int getAge(){
  3. return age;
  4. }比如这个
复制代码

作者: spiderman    时间: 2013-11-14 21:24
晕....是把age的值返回给方法.....

作者: FFF    时间: 2013-11-14 21:27
  1. class aaa {
  2.         private int age;

  3.         aaa() {
  4.                 System.out.println(age);// 构造函数优先于方法运行。但是age还是有值的。虽然这个值是0;
  5.         }

  6.         public int getAge() {
  7.                 return age;// 这里没有赋值,只是把age的值返回去调用者
  8.         }
  9. }
  10. public class temp001 {
  11.         public static void main(String[] arge) {
  12.                 aaa a = new aaa();
  13.                 int x;
  14.                 x = a.getAge();// 这样就是引用赋值
  15.                 System.out.println(x);
  16.         }
  17. }
复制代码

作者: smileven    时间: 2013-11-14 22:16
本帖最后由 smileven 于 2013-11-14 22:24 编辑

因为你定义的public int getAge()函数的返回值类型是int型,所以必须写return语句,且返回值age必须是int型。(1)因为你定义的public int getAge()函数的返回值类型是int型,所以必须写return语句,且返回值age必须是int型。
(2)return语句的作用是告诉Java虚拟机本函数执行完毕。在这里return语句的作用是:
       因为在类的实例对象的属性在类外面是不能获取和操作的。(类的封装特性)。
       但是在类的外面要获取这个对象的属性值就需要在类中定义接口getAge()函数
       getAge()函数中的恶return age就是将当前对象的age的值返回给调用getAge()的操作对象
作者: 默狼    时间: 2013-11-14 22:32
return是返回给方法的,如果在主函数中调用方法那么就是返回给调用者,以便做输出或者其他操作。
作者: 菜不鸟    时间: 2013-11-14 23:01
我想版主回到很好了!
作者: 绕世界流浪丶    时间: 2013-11-14 23:08
FFF 发表于 2013-11-14 21:27

哦哦。总有些概念有些纠结。
作者: hel    时间: 2013-11-15 16:20
就是将运行后的age 返回来,
我们传进参数后,运算后的结果就是age的反回值
作者: 焦晨光    时间: 2013-11-15 17:03
亲 age是返回值
作者: 滔哥    时间: 2013-11-15 17:23
貌似看到老人的身影 了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2