zoukankan      html  css  js  c++  java
  • 成员变量 局部变量

    java局部变量和成员变量

    在java中,局部变量必须初始化;成员变量可以不用初始化,系统自动初始化。

    class A{
      int a; //成员变量
      public static void main (String args){
              int b; //局部变量
      }
    }

    区别:

    1)成员变量在类中,局部变量在方法中

    2)声明成员变量时可以不初始化(被final修饰且没有static的必须显式赋值),而局部变量必须手动初始化

    3)成员变量可以被public、protected、private、static等修饰符修饰,而局部变量不能被控制修饰符及static修饰;两者都可以定义成final型

    4)成员变量存储在堆,局部变量存储在栈

    5)存在时间不同

    类变量、实例变量、局部变量

    类变量是类中独立于方法之外的变量,用static修饰;

    实例变量也是类中独立于方法之外的变量,不过没有static修饰;

    局部变量是的方法中的变量

    public class Variable{  
      
         static int allClicks=0;//类变量  
      
         String str="hello world";//实例变量  
      
         public void method(){  
      
            int i =0;//局部变量  
      
         }  
      
    }  

    实例变量也称为:“域”,“成员变量”,在实体类或数据类中被称为“属性”或“字段”。当实例变量可以改变时,被称为对象的状态。
    final用于常量的声明,规范要求常量的变量名是大写的。

    static静态变量:

    http://www.cnblogs.com/dongzhiquan/archive/2009/07/21/1994792.html

     静态方法和一般方法的区别:

    从使用上来说,主要有3点区别:
    1、在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式。而实例方法只有后面这种方式。也就是说,调用静态方法可以无需创建对象。

    2、静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法;实例方法则无此限制。

    3、程序的static块只能调用静态方法,不能调用实例的方法。

    如果要追溯其区别的根源,可以这样理解:在编译期间静态方法的行为就已经确定,而实例方法只有在运行期间当实例确定之后才能确定
  • 相关阅读:
    IP 封包中的 Header 的 Protocol 字段的 值
    二叉树算法题
    PageFile Swap File
    Quick sort C# code(2)
    VS中Sos调试扩展简介 (转帖)
    BUG: "Old format or invalid type library" error when automating Excel on 64 bit server 2008
    Sql server 2005 connection string
    让IE支持自己的协议
    偶然间,我发现了一个秘密能使盗版的windowsXP变成正版
    Excel C# Automation
  • 原文地址:https://www.cnblogs.com/jingmengxintang/p/5899077.html
Copyright © 2011-2022 走看看