【java中创建对象,AB=newB(this);A=new-查字典问答网
分类选择

来自孙汝霞的问题

  【java中创建对象,AB=newB(this);A=newB(this);A=newB();第一种打错了,应该是AB=newA(this)同时我看见Aa=newB(this)声明一个类型为A的对象a,并且让a等于一个新的B对象,B拥有一个构造函数,将this对】

  java中创建对象,AB=newB(this);A=newB(this);A=newB();

  第一种打错了,应该是AB=newA(this)

  同时我看见Aa=newB(this)

  声明一个类型为A的对象a,并且让a等于一个新的B对象,B拥有一个构造函数,将this对象作为构造函数的参数来构造B对象,B类应该是A类的子类.那么我可不可以把这个写法理解为:Aa=newB(this.A),因为上面解释B类应该是A类的子类!

1回答
2020-05-24 17:13
我要回答
请先登录
世碧波

  AB=newA(this)

  A=newB(this)

  A=newB();

  从后往前说.最后一种写法如果是创建对象,那么语法是错误的.如果编译没错,那么A应该是一个已声明的变量,newB()是一个方法,调用newB()会返回一个值,将这个值赋给变量A.

  第二种情况,如果前面没有语句,那么语法是错误的.如果前面已经将A声明为一个变量,那么这句话正确.

  第一种情况下,如果没有导入B类,仅是把B当做一个变量名,那么语句正确.传的this是一个指向自己的引用.这句话是利用自身对象来创建一个新对象,那么可以预见,新对象中的各项值应该与自身对象是相同的.这句话与子类没有关系

2020-05-24 17:17:12

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •