zoukankan      html  css  js  c++  java
  • java继承

    1.不要为了使用另一个类中的某一个方法去继承,比如demoB中不能有show2()方法,就不能去继承,很可能是兄弟关系而不是父子关系。

    2.当成员变量与函数内变量重名时,如何调用成员变量。另外,子类有的成员变量不访问父类。

    3.super

      当子类成员变量和父类成员变量重名时,想访问父类的成员变量,用关键字super。

    4.打印this  和 对象   都是对象的地址(若把this改成super  则会出错)

    5.第4 的原因,t只创建子类对象,没有创建父类的对象,所以不能打印。但是this可以访问父类空间里的东西,因为子类持有父类空间的指向。

    6.子类只能访问父类中除了private之外的 其他东西,可以通过父类非私有方法去访问父类私有成员。

    7.问题:6中子类有没有继承父类的num?

         有

    8.6中num在内存里面的位置

        内存加载的时候会先将父类进行加载

        子类的内存空间中会持有一个super,这个super指向父类。

       子类能使用的方法区空间至少两片。但是在堆中,能使用的空间只有一个,所以父类的属性在子类创建对象的堆的空间里都有。

       凡是子类借过来的属性,都在子类的堆内存区中。

       私有只是代表不能访问,不代表它不存储。

       所谓的私有在内存里面只是一个数字标识在表示。

       子类创建的堆里父类和子类各自的成员变量会有标识,重名不影响。

    9.zi()里面会有一个默认的super(),存在一个默认的隐式函数,先执行父类的,再执行子类的。

    super()代表父类空间构造函数。this()代表本类构造函数。

    10.子类在执行构造函数时会把父类的东西拿过来

    11.


    12

    13,父类的构造函数里面也有默认的super()

    14.如果子类的构造函数里面有this()它有调用父类构造函数吗super()吗?

        没有

    15.继承的缺点

        打破了封装性

    16.final修饰  的变量不可修改

        eg:  final x = 5; 不能再将 x =7;

    17.类内的构造代码块执行结果

      

    18.一个对象在内存中的产生过程(6,7,8都是隐式的)(很重要,详情http://www.jczhijia.com/CoursePay/14865.html)

  • 相关阅读:
    Android App上架流程
    php字符串操作
    SpringBoot配置MongoDB多数剧源
    Spring boot使用influxDB总结
    Spring boot配置MongoDB以及Morphia踩坑记录
    使用Kubernetes的java-client实现Deployment的部署及更新操作
    Golang循环中调用go func参数异常分析
    git tag本地删除以及远程删除
    SpringBoot之GZip压缩,HTTP/2,文件上传,缓存配置
    Java服务使用Redis实现分布式全局唯一标识
  • 原文地址:https://www.cnblogs.com/qianxinxu/p/5951331.html
Copyright © 2011-2022 走看看