zoukankan      html  css  js  c++  java
  • 面向对象(static关键字)

    /**
    * Created by rabbit on 2014-6-13.博客园
    * 一、静态:static
    * 用法:是一个修饰符,用于修饰成员(成员变量,成员函数).
    * 当成员被静态修饰后,就多了一个调用方式,除了可以被对象调用之外,
    * 还可以直接被类名调用。 格式:类名.静态成员
    *
    * 二、static特点
    * 1、随着类的加载而加载
    * 也就是说,静态会随着类的消失而消失。说明他的生命周期最长
    *
    * 2、优先于对象存在
    * 静态是先存在,对象是后存在的
    *
    * 3、被所有对象所共享
    * 4、可以直接被类名所调用
    *
    *三、实例变量和类变量的区别
    * 1、存放位置
    * 类变量随着类的加载而存在于方法区中,
    * 实例变量随着对象的建立而存在于堆内存中
    * 2、生命周期
    * 类变量生命周期最长,随着类的消失而消失
    * 实例变量的生命周期,随着变量的消失而消失
    *
    * 四、静态使用注意事项
    * 1、静态方法只能访问静态成员。非静态成员既可以访问静态成员,
    * 也可以访问非静态成员
    * 2、静态方法中不可以定义this,super关键字
    * 因为静态优先于对象存在,所以静态方法中不能存在this和super关键字、
    *
    * 五、静态有利有弊
    * 利处:对对象的共享数据进行单独空间的存储,节省空间。不必要每个对象存储一份。
    * 可以直接被类名调用
    * 弊端:生命周期过长,
    * 使用具有局限性;静态方法只能调用静态变量;
    *
    *  Created by rabbit on 2014-6-13.博客园
    */
    public class static_demo
    {
        String name;                    //成员变量(实例变量)
        static String country = "CN";   //静态的成员变量(类变量)
        public static void show()
        {
            System.out.println(country+"方法");
        }
    }
    // Created by rabbit on 2014-6-13.博客园
    class demo_static
    {
        public static void main(String[] args)
        {
            System.out.println(static_demo.country);
            static_demo.show();
        }

    }
    // Created by rabbit on 2014-6-13.博客园

  • 相关阅读:
    redis 操作使用
    sublime 设置像IDE一样的 ctrl+鼠标左键 跳转到定义方法
    tensorflow进阶篇-5(反向传播2)
    tensorflow进阶篇-5(反向传播1)
    Linux后台进程管理以及ctrl+z(挂起)、ctrl+c(中断)、ctrl+(退出)和ctrl+d(EOF)的区别(转)
    mysql基础知识(3)
    mysql基础知识(2)
    tensorflow进阶篇-4(损失函数3)
    tensorflow进阶篇-4(损失函数2)
    mysql基础知识(1)
  • 原文地址:https://www.cnblogs.com/liupengcheng/p/3786294.html
Copyright © 2011-2022 走看看