这个地方不太理解

这个地方不太理解

//静态内部类

    /*

     * 1、静态内部类中,只能直接访问外部类的静态方法,如果需要调用非静态方法可以通过对象实例

     * 2、静态内部类实例时,不依靠外部类对象

     * 3、可以通过外部类.内部类.静态成员的方式访问内部类中静态成员

     * 4、当内部类与外部类属性同名时,默认直接调用内部类中的成员

     *    如果需要访问外部类中静态属性,则可以通过外部类.属性的方式

     *    如果需要访问外部类中非静态属性,则可以通过new外部类().属性 的方式

     */


第三点 没有例子表示外部类.内部类.静态成员的方式访问内部类中静态成员

最后一行的 new Person().eat(); 这个.eat 不是方法吗?怎么是属性呢?

正在回答 回答被采纳积分+1

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

1回答
好帮手慕阿慧 2020-03-23 13:45:27

同学你好,

1、第三点,代码如下图:

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

2、 new Person().eat(); 是在调用Person类中的eat方法,是在访问外部类的非静态方法。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 慕嘟嘟 #1
    不是说静态内部类实例时,不依靠外部类对象嘛? 现在我已经分不清什么是实例,什么是访问,什么是对象,什么是属性了,这一章好像是绕口令一样,每个都长得差不多
    2020-03-23 23:22:09
  • 好帮手慕阿慧 回复 提问者 慕嘟嘟 #2
    同学你好, 1、静态内部类实例不依靠外部类对象,如上图中创建Inner的实例为new Outer2.Inner();。 2、实例就是用new关键字创建出的一个类的对象,实例和对象是一个概念。 访问是获得一些信息,代码去执行某些操作。如访问对象中的方法即调用对象的方法。 属性位于类中,属性分静态属性和非静态属性等,如Person类中age属性代表年龄,name属性代表名字。 3、对于理解不好的知识点,同学可以多次反复看视频跟着老师的节奏,多练习课程中的代码进行理解。
    2020-03-24 11:22:01
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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