java吧 关注:1,274,210贴子:12,787,459

回复:本人小白,想问个问题

只看楼主收藏回复

你可以把全部代码发出来


IP属地:广东来自iPhone客户端17楼2016-10-12 09:38
收起回复
    不发我也没办法,上面的成员方法当然可以通过一个引用来访问


    IP属地:广东来自iPhone客户端18楼2016-10-12 09:52
    收起回复
      2025-08-16 14:05:17
      广告
      不感兴趣
      开通SVIP免广告
      p是person对象,为啥不能用test方法


      IP属地:广西来自Android客户端19楼2016-10-12 10:06
      收起回复
        或者我换个问法,为什么在没有实例化new Person()传入P时。A类中的p能“.”出来Test()方法,且不会报错


        IP属地:江苏21楼2016-10-12 13:19
        回复
          运行结果是"xxxx"吗


          来自Android客户端22楼2016-10-12 13:24
          收起回复
            首先你的类的定义就写错了,声明类的时候类名后面怎么能带括号,你自己把这玩意放到eclipse上去都跑不统。
            你要是真想实现输出XXXX
            class Person{
            public void Test(){
            System.out.print("xxxx");
            }
            }
            class b{
            private Person p;
            public b(Person p){
            this.p=p;
            p.Test();
            }
            }
            public class c{
            public static void main(String args[]){
            Person p = new Person();
            b a = new b(p);
            }
            }
            b类中的构造方法,this.p实际是private Person p
            后面等于的p实际是c类中的Person p = new Person();
            这就变成了声明一个p,他调用自身的Test()方法。


            IP属地:辽宁23楼2016-10-12 14:07
            收起回复
              你搞懂了吗?给我讲一下呗!


              24楼2016-10-12 14:20
              收起回复
                private Person p;
                这句代码就已经创建了Person 对象,这个对象p是存储在栈里;这个对象下边有行为test()也称为方法,你当然可以点出来
                若用new()来新建对象的,它会在存放于堆中。每调用一次就会创建一个新的对象


                IP属地:重庆25楼2016-10-12 14:36
                收起回复
                  2025-08-16 13:59:17
                  广告
                  不感兴趣
                  开通SVIP免广告
                  关于堆很栈的区别看下这篇文章:http://developer.51cto.com/art/200812/99540.htm


                  IP属地:重庆26楼2016-10-12 14:39
                  回复
                    有问题再交流吧!


                    IP属地:重庆27楼2016-10-12 14:40
                    收起回复
                      你也可以不写带参的构造方法呀,加上这个有参的构造方法只是为了让代码更加灵活,实现方法的重载!


                      IP属地:重庆29楼2016-10-12 15:22
                      收起回复
                        因为java


                        IP属地:四川来自Android客户端31楼2016-10-13 09:26
                        收起回复