请问c#中public 和public static 有什么区别??

paperman0 2019-08-20 07:42:06
它们两个的作用域的区别是什么呢?
...全文
1693 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
LX2000_ 2020-05-21
  • 打赏
  • 举报
回复
这样我和你说个例子吧 假如我的a脚本里面有个 静态变量asd 我在b脚本引用asd可以直接使用a.asd来访问修改 对于方法也是一样的
「已注销」 2020-04-29
  • 打赏
  • 举报
回复
还是没懂什么时候该用什么时候不该用 感觉用不用static对结果没什么影响 只不过多写少写了一步实例化的操作
Lruri@hyj 2019-09-02
  • 打赏
  • 举报
回复 1
不带static的是非静态的,要实例化之后,用类的对象才能点出来。 带static的是静态的,用类名直接点出来
小鱼游戏开发 2019-08-27
  • 打赏
  • 举报
回复
总有一些东西需要全局设置 例如说线程池就是一个静态类 不需要去进行实例化即可对其进行修改 毕竟一个应用只需要一个池子不需要多个 对于静态成员一般来说都是用来存储一些该类所有实例都会用到的数据
北纬203度4分 2019-08-24
  • 打赏
  • 举报
回复
static 修饰的的变量或者函数,在内存中的静态区保存,这块内存一直会持续到程序结束才会被释放 new 出来的对象都保存在内存的堆中,需要手动delete,或者程序结束释放掉,但是C# 做了垃圾回收机制,引用计数为0时,会自动释放,所以不用考虑释放问题 正常函数中定义的变量如: int val=0; 是在栈中分配的内存,当出函数栈的时候,内存释放。 总结:这些修饰关键字,都是用来告诉编译器,这个对象该保存到哪里,也就是告诉编译器,什么时候释放这个对象
企图仰望 2019-08-23
  • 打赏
  • 举报
回复
存储的内存 空间不同 静态与非静态的方式 也不同 static前面 如果 不是必须的情况下 不要使用public 包括 确定 不需要 包外使用 public 也要少用 不然会出现很多问题
RSZE 2019-08-22
  • 打赏
  • 举报
回复
这俩就差static。 有static的是静态,不需要手动实例化就可以用 静态方法感觉像函数,静态变量可以维持数值统一或者保留当前值下一次再用
paperman0 2019-08-22
  • 打赏
  • 举报
回复
引用 3 楼 RSZE 的回复:
这俩就差static。 有static的是静态,不需要手动实例化就可以用 静态方法感觉像函数,静态变量可以维持数值统一或者保留当前值下一次再用
感谢🙏
paperman0 2019-08-21
  • 打赏
  • 举报
回复
引用 1 楼 青百万 的回复:
这两个都是public,都可以在外部调用。
不带static的是非静态的,要实例化之后,用类的对象才能点出来。
带static的是静态的,用类名直接点出来。
理解!但是为什么要用静态呢?静态好用在哪里?
二犟 2019-08-21
  • 打赏
  • 举报
回复
这两个都是public,都可以在外部调用。
不带static的是非静态的,要实例化之后,用类的对象才能点出来。
带static的是静态的,用类名直接点出来。

2,537

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧