C++和Java中Static的区别

2025-02-24 18:38:22
推荐回答(4个)
回答1:

java 中的 static 只有一个作用, 提示该变量或函数或内部类与实例对象无关.

c++ 中:
static 修饰类中的变量或类中函数时与 java 语义相同 (注: c++ 类中的内部类等同于 java 的 static 内部类且不需要 static 修饰)

static 修饰全局变量 / 函数时, 表示该变量 / 函数仅文件内可见, 不能被其它文件所引用或用作接口调用.

static 修饰函数局部变量, 表示该函数多次调用共享一份实例.

回答2:

你好,
C++中,声明静态变量,类中的静态函数
Java中,修饰静态域,修饰静态常量,修饰静态方法,以及包中的静态导入
可以说它在两种语言中在静态域和静态方法的功能上差不多 只是语法书写上有些不同而已

回答3:

C++ 中static的含义要比iava广得多。static变量本身有种“共享”的属性,并且共享它的“用户”的权限都是可读可写。其中若有一位改变了它的值,其他的“用户”也只能接受这种改变。
对于c++来说:
1.全局静态变量或者局部静态变量可以让它们相应作用域中的“用户”来使用;
2.类中的静态成员变量和静态成员函数可以用类名访问或者用对象访问(如果权限允许的话),而且其静态成员变量仅能在类外初始化:variable_type CLASSNAME::variable_name = value。
对于Java而言,因为Java严格遵守opp思想,static仅体现在类的成员变量和方法上。用法同2,但是其初始化可以在类内部完成。

回答4:

C++ 中static的含义要比iava广得多。static变量本身有种“共享”的属性,并且共享它的“用户”的权限都是可读可写。其中若有一位改变了它的值,其他的“用户”也只能接受这种改变。
对于c++来说:
1.全局静态变量或者局部静态变量可以让它们相应作用域中的“用户”来使用;
2.类中的静态成员变量和静态成员函数可以用类名访问或者用对象访问(如果权限允许的话),而且其静态成员变量仅能在类外初始化:variable_type CLASSNAME::variable_name = value。
对于Java而言,因为Java严格遵守opp思想,static仅体现在类的成员变量和方法上。用法同2,但是其初始化可以在类内部完成。
望采纳!!