帮忙看下为什么会报错?

帮忙看下为什么会报错?

package com.imooc.people;

public class PeopleTest {
	
	
	public static void main(String[] args) {
		Person p1=new Person();
		p1.age=12;
	    //获取内部类对象实例:方式1:new 外部类().new 内部类();
		Person.Heart myHeart=new Person().new Heart();
		System.out.println(myHeart.beat());
		
		//获取内部类对象实例:方式2:外部类对象.new 内部类();
		myHeart1=p1.new Heart();
		
		
	}


}


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,

1,new的实例用myHeart1接收是可以的,但是同学没有使用对象,只写了一个变量名,如果是要用另一个对象去接收,必须重新实例化该对象;没有实例化直接使用的话,程序会不认识这个对象引用,比如

http://img1.sycdn.imooc.com//climg/5f164b2109ad122a03650108.jpg

2,并不是说要再存一个地址,而是重新实例化了一个对象 


祝学习愉快


好帮手慕阿园 2020-07-20 11:47:58

同学你好,因为上面的对象名是myHeart,而下面使用的是myHeart1,所以会报错,如下

http://img1.sycdn.imooc.com//climg/5f1513aa09bde2f705200143.jpg

祝学习愉快

  • 提问者 慕婉清2005302 #1
    我把新new的实例的地址存到myHeart1 有什么问题吗? 上面的 myHeart 不是已经存储过过实例地址了吗,在存一个新的地址为什么不会报错呢?
    2020-07-20 23:49:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师