zoukankan      html  css  js  c++  java
  • 面向对象——概念(成员变量、静态变量、成员方法、静态方法、垃圾回收机制、重载、包)

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

        1、成员变量描述的是对象的特征,包含在对象之中。不同的对象成员变量彼此独立。一个对象成员变量的改变,不会影响其他对象。

            静态变量独立在对象之外,是所有对象共享的变量。静态变量改变后会影响所有对象。

        2、成员变量只能通过对象.的方式访问。而静态变量,可以通过对象.的方式访问,也可以通过类名.的方式访问。所以静态变量也称为类变量

        3、成员变量存放在堆空间中,静态变量存放在数据段中。

     

    静态方法和成员方法的区别:

     

        1、静态方法加载时机在对象之前,可以通过对象.和类名.的方式访问。而成员方法只能通过对象.的方式访问。

     

        2、静态方法不能直接访问成员变量和成员方法。成员方法可以访问成员变量和静态变量

    垃圾回收机制:

      虚拟机进行垃圾回收时,回收的是没有被变量指向的对象。该过程程序员无法控制。但是可以通过调用System.gc(),加快垃圾回收的速度。

     

    变量按作用域分,分为三种:

     

          1、局部变量,存放在栈空间中,书写在方法或语句块中。语句块一结束,变量空间马上释放。所以,局部变量不能跨方法或语句块使用。

     

          2、成员变量(属性):存放在堆中,书写在方法外,类中。随对象产生而产生,随对象销毁而消失。

     

          3、静态变量(类变量):存放在数据段中,书写在方法外,类中。加上static修饰符。常驻内存,不会消失。

     

    重载概念:

          重载发生在同一个类中,两个方法的方法名相同,参数列表不同(参数类型、参数个数参数位置),和返回类型无关。调用方法时。根据方法的参数来决定执行哪个方法。

    包:

       就是文件夹,通过package定义该类所在的包。

    包的作用:

         1.可以组织相关的类

         2.可以做到信息隐藏。即去掉public后,类不能被其他包调用

      如果一个包中的类,要想访问别的包中的类,可以通过import,导入该类。下面两种包中的类无需导入可以直接使用。

           1.本包中的类

           2.java.lang包中的类

     

     

     

     

  • 相关阅读:
    Notes about "Exploring Expect"
    Reuse Sonar Checkstyle Violation Report for Custom Data Analysis
    Eclipse带参数调试的方法
    MIT Scheme Development on Ubuntu
    Manage Historical Snapshots in Sonarqube
    U盘自动弹出脚本
    hg的常用配置
    Java程序员的推荐阅读书籍
    使用shared memory 计算矩阵乘法 (其实并没有加速多少)
    CUDA 笔记
  • 原文地址:https://www.cnblogs.com/jichuang/p/6536656.html
Copyright © 2011-2022 走看看