zoukankan      html  css  js  c++  java
  • 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)静态代码块,构造代码块,构造方法的顺序问题?
          静态代码块 > 构造代码块 > 构造方法

  • 相关阅读:
    查找并拷贝目录中指定文件到某个文件夹
    TPS和QPS的概念
    50道 Redis常见面试题,干货汇总
    面试题:写一个死锁示例
    MySQL聚集索引与辅助索引的区别
    Java进阶知识点:接口幂等性
    测试网络联接状况常用命令 ping 使用方法介绍
    服务路由、负载均衡和服务配置中心的基本概念
    利用堆排序和分治法求解千万级数据排序的Top K问题—百度面试
    创建Spring Boot项目时,提示 Cannot download 'https://start.spring.io'
  • 原文地址:https://www.cnblogs.com/flei/p/6604697.html
Copyright © 2011-2022 走看看