java - Java 中的静态变量

标签 java variables static

我知道静态变量是类的一部分,而不是 Object 的一部分。下面这几行代码如何运行没有问题

class M
{
  static int i=0;
  void Inc()
  {
    System.out.println("Global "+M.i);
    System.out.println("Local "+this.i);
  }
}    

public class StaticTest
{
   public static void main(String args[])
   {
    M m1=new M();
    m1.i=99;       //How can the m1 object access i variable of the class
    m1.Inc();
   }  
}

我得到的输出是

Global 99
Local 99

m1对象如何访问类的i变量?

最佳答案

在这两种情况下,它是完全相同的i变量。

不幸的是,java允许您使用非静态语法访问静态字段。

这就是全部内容,没有其他内容。

关于java - Java 中的静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43827952/

相关文章:

java - 无法在 Netbeans 7.3 中测试 RESTful Web 服务,如何摆脱路径上多余的 "/"

java - JDBC 和 MySQL : Do changes in the underlying database are known to the java program?

java - 连续 2 个完整 GC 周期内存未清除

java - Java 中 BigDecimal 和 double 的运算

java - 无法从静态上下文引用非静态方法 getAssets (Java)(Android)

java - 在 Android 移动设备中解析 XML 的各种选项有哪些?

javascript - 在数组中存储正则表达式在 Javascript 中不起作用

PHP 查询 MySQL,显示 "count(*)"

android - 在哪里放置静态 URL 在 android 项目中?

java - 如何从静态方法轻松访问类的各种实例中的变量