zoukankan      html  css  js  c++  java
  • 153 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 04 方法内部类

    153 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 04 方法内部类

    **本文知识点:方法内部类 **

    说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进行了截图记录,没有对截图步骤进行详细的文字说明(后面博主时间充裕了,会对目前的博客编辑修改,补充上详细的文字说明);有些步骤和相关知识点缺乏文字描述,可能会难以理解。读者如有不明之处,欢迎博客私信或者微信(本人微信在博客下方的“关于博主”处)与本人交流,共同进步

    方法内部类

    方法内部类定义及特点

    mark

    方法内部类代码示例

    方法内部类的样子——定义在一个方法里面的内部类
    mark
    2个错误:
    mark

    错误1:方法内部类中无法包含静态成员
    mark

    解决方法:去掉static即可
    mark

    错误2:找不到Heart类型 因为Heart是方法内部类,所以在方法编译时找不到方法内部的方法内部类类型
    mark

    解决方法:
    将方法类型改为Object,同时在方法中返回一个Heart对象
    mark

    注意:方法内部类中不允许有静态成员,所以age前的static关键字也要删掉
    mark
    mark

    测试方法内部类:
    方法内部类的对象无法直接获取,只有通过调用外部类中用于包裹方法内部类的方法来产生方法内部类的对象——在当前实例中,即通过getHeart方法产生Heart类对象
    mark

    其实,通常方法内部类对应的外部类的方法,会返回内部类的方法(格式:内部类对象.方法,具体格式样式: new 方法内部类名称.方法内部类中的方法)

    因为方法内部类脱离了对应的方法什么都获取不了,所以必须通过上面的方式。
    mark

    正式开始测试:
    要借助外部类的实例对象,调用外部类中方法内部类对应的外部类方法。
    本例中,要借助lili对象
    mark

    测试代码:
    mark

    测试结果:
    mark
    结果产生的原因:
    mark

    方法内部类编译生成的文件的样子

    成员内部类编译生成的文件:
    mark

    方法内部类编译生成的文件什么样子呢?
    mark
    方法内部类编译生成的文件长上面这个样子,和成员内部类编译生成的文件长的不一样

    方法内部类小结

    小结
    mark
    mark

  • 相关阅读:
    linux常用命令
    Hibernate常用API以及使用说明
    Hibernate使用套路,新手请进
    git 完全讲解 无废话,包含在myeclipse中使用,包括解决冲突
    Spring使用事务增加的注解实现方
    java.lang.ClassCastException: com.sun.proxy.$Proxy27 cannot be cast to com.bbk.n002.service.QuestionService
    使用aspectJ实现Spring AOP的两种方式
    用Diff和Patch工具维护源码
    opennebula 补丁制作与补丁升级
    IPMI总结
  • 原文地址:https://www.cnblogs.com/xlfcjx/p/13828719.html
Copyright © 2011-2022 走看看