static-为什么静态变量在构造方法里面使用不报错?

问题描述

为什么静态变量在构造方法里面使用不报错?

public class test
{
public static int staticVar = 0;
public int instanceVar = 0;
public test()
{
staticVar++;
instanceVar++;
System.out.println("staticVar=" + staticVar + ",instanceVar=" + instanceVar);
}
}
不是只有静态方法才可以调用静态变量吗?
为什么静态变量在构造方法里面使用不报错?

解决方案

这个是正确使用的,java 类中的方法无论静态还是非静态的都可以使用静态变量
而静态方法只能使用静态变量

解决方案二:

静态的方法、成员变量、语句块是在类加载的时候被初始化,所以在你构造(构造函数)对象的时候当然可以使用了。建议你看一下对象初始化过程。

时间: 2024-09-21 19:56:10

static-为什么静态变量在构造方法里面使用不报错?的相关文章

PHP static局部静态变量和全局静态变量总结

 使用静态局部变量的原因是它不能被外部使用,但是它的值依然在没此使用后保留.虽然使用全局变量可以实现相同的功能,但是它经常会造成意外 静态局部变量的特点:   1.不会随着函数的调用和退出而发生变化,不过,尽管该变量还继续存在,但不能使用它.倘若再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值 2.静态局部变量只会初始化一次 3.静态属性只能被初始化为一个字符值或一个常量,不能使用表达式.即使局部静态变量定义时没有赋初值,系统会自动赋初值0(对数值型变量)或空字符(对字符变

PHP static局部静态变量和全局静态变量总结_php技巧

静态局部变量的特点: 1.不会随着函数的调用和退出而发生变化,不过,尽管该变量还继续存在,但不能使用它.倘若再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值2.静态局部变量只会初始化一次3.静态属性只能被初始化为一个字符值或一个常量,不能使用表达式.即使局部静态变量定义时没有赋初值,系统会自动赋初值0(对数值型变量)或空字符(对字符变量):静态变量的初始值为0.4.当多次调用一个函数且要求在调用之间保留某些变量的值时,可考虑采用静态局部变量.虽然用全局变量也可以达到上述目的

php Static关键字静态变量的实用方法(1/3)

 代码如下 复制代码 <?php class Foo { public static $my_static = 'foo'; public function staticValue() { return self::$my_static; } } class Bar extends Foo { public function fooStatic() { return parent::$my_static; } } print Foo::$my_static . " "; $foo

Java 中的 static 使用之静态变量&amp;#183;静态方法&amp;#183;静态初始化块

Java 中的 static 使用之静态变量 大家都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的对象共享同一个成员.此时就是 static 大显身手的时候了!! Java 中被 static 修饰的成员称为静态成员或类成员.它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享.静态成员可以使用类名直接访问,也可以使用对象名进行访问.当然,鉴于他作用的特殊性更推荐用类名访问~~ 使用 static 可以修饰变量.方法和

PHP static静态变量详解

PHP static静态变量 变量范围的另一个重要特性是静态变量(static variable).静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失.看看下面的例子: 例子 演示需要静态变量的例子 <?PHP     function Test()      {      $w3sky = 0;      echo $w3sky;      $w3sky++;      }      ?>  本函数没什么用处,因为每次调用时都会将 $w3sky 的值设为 0 并输出 &q

php的静态变量和静态方法

静态变量也称为类变量,静态方法也称为类方法. 简单的说,静态变量就是所有对象都共享的变量.静态变量也称为类变量,静态方法也称为类方法. 如何定义静态变量 访问修饰符 static 变量名; 如何访问静态变量: (1)在类外部:类名::$类变量名 (2)在类内部:self::$类变量名或者::$类变量名 例:一群小孩在玩游戏,不时有新的小孩加入游戏.问:如何知道现在有多少小孩在玩游戏,用面向对象的思想来实现. 静态变量与变通变量的区别: (1)加上static称为静态变量或者类变量,否则称为实例变

php中static静态变量的使用方法详解_php基础

看看下面的实例: 复制代码 代码如下: <?php function Test() { $w3sky = 0; echo $w3sky; $w3sky++; } ?> 本函数每次调用时都会将 $w3sky 的值设为 0 并输出 "0".将变量加一的 $w3sky++ 没有其到效果,因为一旦退出本函数则变量 $w3sky 就不存在了.要写一个不会丢失本次计数值的计数函数,要将变量 $w3sky 定义为静态(static)的: 如下: 复制代码 代码如下: <?php f

static 静态变量-iOS 的static静态变量

问题描述 iOS 的static静态变量 你好,我定义了一个静态变量 static int timeout = self.timeNumber; //倒计时时间 self.timeNumber 是int 型的. 这样赋值是错误的,请问怎么赋值给静态变量不会出错 因为 我这个timeout变量必须是static,否则NStimer就不会启动 解决方案 C++ 中的static静态变量static静态变量静态变量static 解决方案二: http://blog.csdn.net/wbw1985/a

asp.net application static静态变量用法

asp教程.net application static静态变量用法 File: Global.asax <%@ Application Language="C#" ClassName="Global" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Collections.Generic" %> <