zoukankan      html  css  js  c++  java
  • JAVA-初步认识-第十章-内部类-细节

    一.

    先书写一个特殊点的程序来学习一下内部类的知识点。

    (在没有讲解前,先自己梳理一下,Outer这个外部类里的函数想要访问内部类,也必须创建内部类的对象)

    编译运行的结果,我猜测是5。DOS结果显示,我们猜测没有错。

    如果,我们想要输出的num是4,该怎么修改。我的想法是将method()方法体中改为new Outer().num。但是视频中采用的方法和我的不一样,将被调用的内部类中的show方法体改了一下,变成了输出this.num,也就是对象中的num,而不是方法体中的num。

    接下来就是打印num=3的情况,将输出语句改成Outer.this.num,其实之前输出num=4,也是可以写成Inner.this.num,但是Inner比较多余,不写也成。

    这里产生一个疑问,对于类和对象这块知识点中的点号(.)的运行到底是什么样的规则?有没有一个明确的说法呢?

    实际开发时,不可能出现这样一连串的num。

    这里为什么内部类可以直接访问外部类中的成员?表象是num放在了内部类中,但是调用的还是外部类中的num。就像method()方法,其方法体中的写有show(),为什么从method()方法中书写show()方法,可以直接访问其他的成员?那是因为这里省略了this,实际上是this.num。

    调用是有原因的,不是想当然的。

    这里的this是指的外部类的对象。

  • 相关阅读:
    大话设计模式——UML图
    IdentityServer3零星笔记
    Angular路由
    基于jquery的静态页面翻页
    00_python安装与配置(mac)
    OracleParameter.UdtTypeName的值必须是全大写!
    VS2012调用64位IIS Express
    MVC中使用Ueditor
    优秀博客站点
    jqGrid中的formatter
  • 原文地址:https://www.cnblogs.com/wsw-bk/p/7834786.html
Copyright © 2011-2022 走看看