首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

浅谈static a={0};中static的作用

我们又知道,static int a;表示在全局区为变量a分配内存,同理我们在数组前面加上static之后,系统也为该数组在全局区分配内存,全局区的总内存比较大,一般会满足我们的需求。...如题:当n*m比较大时,这就是为什么static a[n*m]={0};必须带着static的原因了。 静态分配的,有两种情况: 1....方法内部的静态变量: 方法内部的静态变量,执行完静态变量值不消失,再次执行此对象的方法时,值仍存在, 它不是在栈中分配的,是在静态区分析的, 这是与局部变量最大的区别; 1.static意思是静态,可以修饰类...、字段、属性、方法 2.标记为static的就不用创建实例对象调用了,可以通过类名直接点出来 3.static三种用法: 4.用于变量前,表示每次重新使用该变量所在方法、类或自定义类时,变量的值为程序这次运行最后一次为变量赋值时的值...(参数,下面同)) { ~~~~(方法内容,下面同) } static void s(....) { ~~~~ } } 7.当你在其他方法里调用这个类中的方法s,则不用先声明这个类的变量如直接调用方法:

65410

static有什么作用?

关键字static的作用是什么 全局静态变量 在全局变量前加上关键字static,全局变量就定义成一个全局静态变量. 存储在内存中的位置:静态存储区,在整个程序运行期间一直存在。...初始化:未经初始化的全局静态变量会被自动初始化为0(自动对象的值是任意的,除非他被显式初始化); 作用域:全局静态变量在声明他的文件之外是不可见的,准确地说是从定义之处开始,到文件结尾。...内存中的位置:静态存储区 初始化:未经初始化的全局静态变量会被自动初始化为0(自动对象的值是任意的,除非他被显式初始化); 作用域:作用域仍为局部作用域,当定义它的函数或者语句块结束的时候,作用域结束。...但是当局部静态变量离开作用域后,并没有销毁,而是仍然驻留在内存当中,只不过我们不能再对它进行访问,直到该函数再次被调用,并且值不变; 静态函数 在函数返回类型前加static,函数就定义为静态函数。...函数的实现使用static修饰,那么这个函数只可在本cpp内使用,不会同其他cpp中的同名函数引起冲突; warning:不要再头文件中声明static的全局函数,不要在cpp内声明非static的全局函数

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    java中static关键字的作用_java中static关键字的作用

    大家好,又见面了,我是你们的朋友全栈君。 java中static关键字主要有两种作用: 第一:为某特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关。...static修饰成员方法:该方法属于类的方法,可以通过 ClassName.methodName 直接引用,而不需要new出类的实例。...static修饰内部类:static不能修饰普通类,只能修饰内部类,被static修饰的内部类的创建方式: new OuterClass.InnerClass()。...static导入包:语法“import static java.lang.Math.*”,这样在类中就可以直接使用Math类中的静态方法而不需要写类名,个人认为,在频繁使用某个类的时候比较方便,但是降低了可读性...,要达到这样的目的只能把创建对象的方法声明为static,程序实例如下: classSingleton {private static Singleton instance = newSingleton

    64350

    java中static关键字的作用_Java:Java中static关键字作用

    static关键字最基本的用法是: 1、被static修饰的变量属于类变量,可以通过类名.变量名直接引用,而不需要new出一个类来 2、被static修饰的方法属于类方法,可以通过类名.方法名直接引用,...而不需要new出一个类来 3、被static修饰的变量、被static修饰的方法统一属于类的静态资源,是类实例之间共享的。...从JVM的类加载机制的角度讲,静态资源是类初始化的时候加载的,而非静态资源是类new的时候加载的。 静态块 静态块也是static的重要应用之一。...也是用于初始化一个类的时候做操作用的,和静态变量、静态方法一样,静态块里面的代码只执行一次,且只在初始化类的时候执行。 需要注意的三点: 1、Static修饰的方法执行顺序是怎么样的?...知识点: 1、Java中的static关键字不会影响到变量的变量或者方法的作用域。 2、虽然对于静态方法来说没有this,但是我们在非静态方法中能够通过this访问静态方法成员变量。

    76220

    static关键字的作用总结

    1、静态全局变量 (1)在全局数据区分配内存,静态局部变量也是; (2)未经初始化的静态全局变量会被程序自动初始化为0; (3)静态全局变量作用域是声明此变量所在的文件,其他的文件即使用 extern...但其作用域为局部作用域,当定义它的函数或语句块结束时,其作用域随之结束。... 静态资源是类初始化的时候加载的,而非静态资源是类实例化对象的时候加载的。...int Student::count=0;// static关键字只能用于类定义体内部的声明中,定义时不能标示为static 非静态成员函数有 this 指针,而静态成员函数没有 this 指针。...const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间。 static const int a可以在声明的时候初始化,也可以在类外初始化。

    31120

    java static关键字的作用_java中static关键字的作用是什么

    java中static关键字的作用:1、java中可以通过statin关键字修饰变量达到全局变量的效果;2、static修饰的方法属于类方法,不需要创建对象就可以调用;3、static代码块常用于初始化静态变量...java中static关键字的作用: 在java语言中有四种使用情况:成员变量、成员方法、代码块和内部类 (1)static成员变量 java中可以通过statin关键字修饰变量达到全局变量的效果。...static修饰的变量(静态变量)属于类,在类第一次通过类加载器到jvm时被分配内存空间。 (2)static成员方法 static修饰的方法属于类方法,不需要创建对象就可以调用。...static方法中不能使用this和super等关键字,不能调用非static方法,只能访问所属类的静态成员变量和静态方法。...静态内部类不能访问外部类的普通变量,只能访问外部类的静态成员变量和静态方法。

    42150

    static 和const的作用面试常问

    点击上方"蓝字"关注我们01、static 关键字>>>1. 局部变量作用:将变量的生命周期延续到程序的整个运行期间,而不仅仅是它所在的函数调用期间。...全局变量作用:将全局变量的可见性限制在当前文件中,其他文件无法访问。static int globalVar = 0; // 只在当前文件可见>>>3....修饰函数作用:将函数的可见性限制在当前文件,其他文件无法调用。static void helperFunction() { // 只能在当前文件中调用}>>>4....修饰指针作用:static 本身并不直接作用于指针的内容,但可以用在指针的声明中以控制指针的存储类型。...static int* ptr; // 指针本身是静态的,但它指向的内容可以动态变化02、const 关键字>>>1. 局部变量作用:声明一个只读变量,不能被修改。

    4600

    Java中static关键字的作用

    static关键字主要有两种作用: 第一,为某特定数据类型或对象分配单一的存储空间,而与创建对象的个数无关。...:用static关键字修饰的静态变量和不用static关键字修饰的实例变量。...static方法是类的方法,不需要创建对象就可以被调用,而非static方法是对象的方法,只有对象被创建出来后才可以被使用 static方法中不能使用this和super关键字,不能调用非static方法...同理,static方法也不能访问非static类型的变量。 单例设计模式: static一个很重要的用途就是实现单例设计模式。...,只能通过该类提供的方法来获取类的对象,要达到这样的目的只能把创建对象的方法声明为static,程序实例如下: class Singleton{ private static Singleton instance

    1.2K30

    static关键字的用法和作用

    static关键字的用法和作用 1. 什么是static关键字? 在Java中,static 是一个关键字,用于声明静态成员。静态成员属于类,而不属于类的任何实例。...2. static关键字的用法 static 关键字可以用于以下几个方面: 静态变量(类变量): 用于声明类级别的变量,所有类的实例共享这个变量。...static void display() { System.out.println("静态内部类的静态方法"); } } // 外部类的静态方法...static void outerMethod() { System.out.println("外部类的静态方法"); } public static void...静态方法获取实例: 提供一个公共的静态方法来获取该类的实例。在这个例子中,public static Singleton getInstance() 就是获取实例的静态方法。

    8500

    Java之static作用的全方位总结

    1、深度总结  引用一位网友的话,说的非常好,如果别人问你static的作用;如果你说静态修饰 类的属性 和 类的方法 别人认为你是合格的;如果是说 可以构成 静态代码块,那别人认为你还可以; 如果你说可以构成...3)static代码块   static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。...,因为方法内定义的变量是局部变量,离开该方法,变量就失去了作用,也就会自动被消除,而内部类却不会离开它所在方法就失去作用,它有更广的生命周期,下面通过一个实例加以说明: ?...在这里只需要记住一点:与C/C++中的static不同,Java中的static关键字不会影响到变量或者方法的作用域。...3.static能作用于局部变量么?   在C/C++中static是可以作用域局部变量的,但是在Java中切记:static是不允许用来修饰局部变量。不要问为什么,这是Java语法的规定。

    1.6K21

    java中的static关键字的作用?

    声明的(在这里所讲排除了类的访问控制),例如: 未声明为static的例子: class ClassA{ int b; public void ex1(){...的例子: class ClassA{ static int b; static void ex1(){ … } } class ClassB{...用来修饰类成员的主要作用了,在java类库当中有很多类成员都声明为static,可以让用户不需要实例化对象就可以引用成员,最基本的有Integer.parseInt(),Float.parseFloat...接下来讲一下被static修饰后的变量的值的问题,刚才在前面讲过,被static修饰后的成员,在编译时由内存分配一块内存空间,直到程序停止运行才会释放,那么就是说该类的所有对象都会共享这块内存空间,看一下下面这个例子...5,接着声明对象tt,调用无参数的构造函数,那么就把对象tt的成员变量i的值初始化为4了,注意了,在这里i是static,那就是说该类的所有对象都共享该内存,那也就是说在实例化对象tt的时候改变了i的值

    32120

    初识C语言——关键字static的作用

    修饰函数-称为静态函数 (1).static修饰局部变量 下面我们通过两段代码来理解static修饰局部变量的意义。...然后我们来对比一下它们的结果: 我们可以看到,两段代码只有一处不同,代码1test函数中的整型变量i没有被static修饰,而代码2test函数中的整型变量i有被static修饰,就因为这一处不同...接下来解释一下代码2 的结果: 我们调式观察: 总结:局部变量被static修饰后,将存储在静态区,出作用域后将不会被销毁,而是保留在静态区,生命周期改变(本质上改变了存储类型),这时它的生命周期就是程序的声明周期...(3).static修饰函数 static修饰函数也是一样的作用,和修饰全局变量一样。...以上就是对C语言中关键字static的介绍。

    1.2K10

    【答疑解惑】java中static关键字的作用

    static方法 static方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没有对象,就谈不上this了。...static变量 static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。...而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。static成员变量的初始化顺序按照定义的顺序进行初始化。...static代码块 static关键字还有一个比较关键的作用就是 用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。...在类初次被加载的时候,会按照static块的顺序来执行每个static块,并且只会执行一次。为什么说static块可以用来优化程序性能,是因为它的特性:只会在类加载的时候执行一次。

    69470

    Java中static作用及用法详解「建议收藏」

    用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类的对象市,不生成static变量的副本,而是类的所有实例共享同一个static变量。...1.2 static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量;另一种是没有被static修饰的变量,叫实例变量。...1.4static代码块 static代码块也叫静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM加载类时会执行这些静态的代码块,如果static...在成员的声明前面加上关键字static(静态的)就能创建这样的成员。如果一个成员被声明为static,它就能够在它的类的任何对象创建之前被访问,而不必引用任何对象。...声明为static的方法有以下几条限制: • 它们仅能调用其他的static方法。 • 它们只能访问static数据。

    91431

    《Monkey Java》课程5.1之static关键字的作用

    本节课程将学习以下内容: 静态成员变量的语法特点 静态函数的语法特点 静态代码块的语法特点 ---- 静态成员变量的语法特点 在定义成员变量的时候,在前面添加一个static关键字。...格式:static int i; 特点: 静态成员变量可以直接用类名来调用,格式为:类名.成员变量名; 所有的对象使用的静态变量是同一份,任何一个对象的静态变量被修改,那么其他对象的静态变量也会被修改...例子:(请动手加深理解) 1.新建一个名为Person.java的Java源代码文件: class Person{ static int i; } 2.新建一个名为Demo01.java的Java源代码文件...(); // 用类名直接调用静态函数 Dog.shout02(); } } 静态代码块的语法特点 作用:主要作用是为静态变量赋值初始值。...格式: static{ 语句; } 特点: 没有名字,只有一个static; 静态代码块在装载当前所在类的时候执行。

    43110

    Java中static关键字的作用与用法「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 一、static关键字的特点: static是一个修饰符,用于修饰类的成员方法、类的成员变量,另外可以编写static代码块来优化程序性能。...3. static修饰代码块 static关键字还有一个比较重要的作用就是用来形成静态代码块以优化程序性能。static块可以置于类中的任何地方,类中可以有多个static块。...在类初次被加载的时候,会按照static块的顺序来依次执行每个static块,并且只会执行一次。 static块可以优化程序性能,是因为它的特性:只会在类被初次加载的时候执行一次。...二、static关键字的误区 1. 与C/C++中的static不同,Java中的static关键字不会影响到变量的变量或者方法的作用域。...在C/C++中static关键字是可以作用于局部变量的,但是在Java中是不允许使用static修饰局部变量的。这是Java语法的规定。

    32820

    Java学习笔记 static关键字作用和应用

    static关键字 static是一个修饰符,用于修饰类的成员方法、类的成员变量 1)static修饰成员变量 static变量称作静态变量、类变量。....”方式调用 静态方法中不存在当前对象,因此不能使用this关键字,当然也不能使用super 静态方法不能被非静态方法覆盖 构造方法不允许声明为static 3)static修饰代码块 static关键字还有一个比较重要的作用就是用来形成静态代码块以优化程序性能...static块可以置于类中的任何地方,类中可以有多个static块。在类初次被加载的时候,会按照static块的顺序来依次执行每个static块,并且只会执行一次。...4)静态导包 这里在导入时,我们使用了static关键字,而且在引入类的最后还加上了“.*”,它的作用就是将某类中的所有类方法直接导入。...静态导包用法,将类的方法直接导入到当前类中,从而直接使用“方法名”即可调用类方法,更加方便。 Java中的static关键字不会影响到变量或者方法的作用域。

    22330

    static作用(修饰函数、局部变量、全局变量)

    C语言:static作用(修饰函数、局部变量、全局变量) 一、 static全局变量与普通的全局变量有什么区别 ? 全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。  ...static函数与普通函数作用域不同,仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static修饰的函数),内部函数应该在当前源文件中说明和定义。...四、static的三条重要作用,首先static的最主要功能是隐藏,其次因为static变量存放在静态存储区,所以它具备持久性和默认值0。       ...Static可以用作函数和变量的前缀,对于函数来讲,static的作用仅限于隐藏。      2、static的第二个作用是保持变量内容的持久。...的第三个作用是默认初始化为0。

    82120

    第07天Static关键字作用及用法

    同时如果静态的成员变量和成员方法不出作用域的话,它们的句柄都会保持不变。...static 属性声明虽然是在类的结构中,但是并不受到对象的控制,是独立存在的。...# static 属性与非 static 属性的区别 static 声明的属性和普通属性(非 static 属性)最大的区别在于保存的内存区域不同。static 所修饰的在静态数据区。...static 属性与非 static 属性还有一个最大的区别,就是在于所有非 static 属性必须产生实例化之后才可以访问,但是 static 属性不受实例化对象的控制。...也就是说,在没有产生实例化对象的情况下,依然可以使用 static 对象。 # 3. 修饰成员方法 说明 方法本来就是存放在类的定义当中的。static 修饰成员方法的作用是可以使用 "类名。

    19520
    领券