• year:2017 month:8 day:3


    2017-08-03

    JAVAse

    1:静态变量和成员变量的区别:

    所属不同:静态变量属于类,所以也称为类变量

         成员变量属于对象,也称为实例变量

    内存中位置不同:静态变量存储余方法区的静态区

            成员变量存储于堆内存

    内存出现时间不同:静态变量随着累的加载而加载,随着累的消失而消失

             成员变量随着对象的创建而存在,随着对象的消失而消失

    调用不同:静态变量可以通过类名调用,也可以通过对象调用

         成员变量只能通过对象名调用

    2.成员变量和局部变量的区别

    在类中位置不同:成员变量:类中方法外

            局部变量:方法内或方法声明上

    在内存中的位置不同:成员变量:堆内存

              局部变量:栈内存

    生命周期不同:成员变量:随着对象的创建而存在,随着对象的消失而消失

           局部变量:随着方法调用存在,随着方法结束消失

    初始化值不同:成员变量:有初始默认值

           局部变量:没有初始默认值

    3.类的初始化过程:Student student = new  Student ();

            加载Studnet.class文件进内存

            在栈内存为student开辟内存

            对学生对象的成员变量进行默认初始化

            对学生对象的成员变量进行显示初始化

            通过构造方法对学生对象的成员变量赋值

            学生对象初始化完毕,把对象地址赋值给s变量

    4.代码块:

    局部代码块:在方法中出现,限定变量声明周期,及早释放,提高内存利用率

    静态代码块:在类中方法外出现,并加上static修饰符,用于给类进行初始化,在加载类的时候就调用,并且执行一次

    构造代码块:在类中方法外出现,多个构造方法中相同的相同的代码存放在一起,每次调用构造方法时执行一次,并在构造方法前执行

    5.匿名对象:没有名字的对象

    作用:对象调用方法 ,仅仅一次的时候;作为实际参数传递

    6.面向对象基于面向过程:

    面向对象的思想:作为一个指挥者,把过程根据不同的功能进行封装,需要用时进行调用,避免重复,容易修改

    面向过程的思想:作为一个参与者,参与每一个过程和步奏并完成它

    面向对象的特征:封装;继承;多态

    7.static:

    随着类的加载而加载

    优先于对象存在

    被类的所有对象共用(可跨类)

    可通过类名调用

             

  • 相关阅读:
    七、vertical-align属性、透明度属性及兼容、ps常用工具、常见的图片格式、项目规范、命名参考、iconfont的使用
    自定义注解!绝对是程序员装逼的利器!!
    令人爱不释手的Python列表推导式
    用Python画colorbar渐变图+修改刻度大小+修改渐变颜色
    pandas:使用函数批量处理数据(map、apply、applymap)
    【Python3】xlwt/xlrd模块读取和新建excel并生成直方图
    什么是可串行化MVCC
    python计算和媳妇在一起天数的小程序,最后绘制成花.
    520了,用32做个简单的小程序
    “TensorFlow 开发者出道计划”全攻略,玩转社区看这里!
  • 原文地址:https://www.cnblogs.com/buyanyu/p/7277840.html
Copyright © 2020-2023  润新知