• java学习笔记 --- 面向对象3


    一、创建对象是做了些什么事情?

      图解:

    二、static关键字

       (1)静态的意思。可以修饰成员变量和成员方法。

      (2)静态的特点:      

          1、静态是随着类的加载就加载了。也是随着类的消失而消失了。

          2、静态优先于对象存在,被对象共享。

          3、因为静态先存在于内存中无法访问后来的对象的中的数据,所以静态无法访问非静态。而且内部无法书写this。因为这时对象有

              可能不存在,this没有任何指向。

          4、可以通过类名调用
              既可以通过对象名调用,也可以通过类名调用,建议通过类名调用。

       (3)静态的注意事项      

          1、静态方法不能访问非静态的成员。但是非静态可以访问静态成员的。

                说明:静态的弊端在于访问出现局限性。好处是可以直接被类名调用。

          2、静态方法中不允许出现this,super关键字。

       (4)静态变量和成员变量的区别

          A:所属不同
               静态变量:属于类,类变量
               成员变量:属于对象,对象变量,实例变量
           B:内存位置不同
               静态变量:方法区的静态区
               成员变量:堆内存
           C:生命周期不同
               静态变量:静态变量是随着类的加载而加载,随着类的消失而消失
               成员变量:成员变量是随着对象的创建而存在,随着对象的消失而消失
           D:调用不同
               静态变量:可以通过对象名调用,也可以通过类名调用
               成员变量:只能通过对象名调用

    三、代码块
       (1)用{}括起来的代码。
       (2)分类:
          A:局部代码块
             用于限定变量的生命周期,及早释放,提高内存利用率。
          B:构造代码块
             把多个构造方法中相同的代码可以放到这里,每个构造方法执行前,首先执行构造代码块。
          C:静态代码块
             对类的数据进行初始化,仅仅只执行一次。
       (3)静态代码块,构造代码块,构造方法的顺序问题?
          静态代码块 > 构造代码块 > 构造方法

  • 相关阅读:
    史上最烂的项目:苦撑 12 年,600 多万行代码
    老司机开车,教会女朋友「马拉车算法」的正确姿势
    想知道妹子喜不喜欢你?哈佛少年的AI,凭聊天记录算出心动概率,安卓苹果可用...
    这 10 个让你笑的合不拢嘴的 GitHub 项目,居然拿了 7 万星!
    短小精悍,双指针对撞,求解「两数之和 II」
    盘点今年秋招那些“送命”的算法面试题
    经验分享:关于计算机读研的小建议
    没想到吧,这就是算法工程师的一天!
    学习算法有什么入门级的书 ? 或者学习资料。
    超详细!详解一道高频算法题:数组中的第 K 个最大元素
  • 原文地址:https://www.cnblogs.com/flei/p/6604697.html
Copyright © 2020-2023  润新知