作者:做普通的自我 | 来源:互联网 | 2024-11-08 20:12
本文探讨了在Unity中使用静态方法扩展的实用技巧和优化策略。首先介绍了静态方法在Unity中的作用,然后详细阐述了常见的实现方式,包括通用写法和静态脚本的应用。通过这些方法,开发者可以提高代码的可读性和维护性,同时优化性能。文中还提供了具体的示例和最佳实践,帮助读者更好地理解和应用这些技术。
文章目录 🟥 Unity中静态方法的作用: 🟧 第一种通用写法: 🚩 静态脚本: 🚩 如何使用静态脚本: 🟨 第二种拓展写法: 🚩 为什么要用? 🚩 怎么用? 🚩目标脚本: 🚩如何使用目标脚本:
&#x1f7e5; Unity中静态方法的作用&#xff1a; 让你不必再GetComponent<目标脚本>().方法&#xff0c;而是直接 目标脚本.方法&#xff0c;便可直接使用目标脚本的内部方法。
使得写法更加地方便。
&#x1f7e7; 第一种通用写法&#xff1a; 如何使用&#xff1f;
静态脚本放在Assets里&#xff0c;不用挂在场景中。
使用脚本 Test_02 挂在场景中。
&#x1f6a9; 静态脚本&#xff1a; using UnityEngine ; public class Test_01 { public static int [ ] a&#61; new int [ 6 ] ; public static void Skode_Debug ( ) { Debug. Log ( "hello" ) ; } }
&#x1f6a9; 如何使用静态脚本&#xff1a; using UnityEngine ; public class Test_02 : MonoBehaviour { private void Start ( ) { Debug. Log ( Test_01. a. Length) ; Test_01. Skode_Debug ( ) ; } }
&#x1f7e8; 第二种拓展写法&#xff1a; &#x1f6a9; 为什么要用&#xff1f; 用了这个SingletonBase写法&#xff0c;就可以让静态脚本中&#xff0c;所有静态方法都不用写static。 为了项目中脚本更有逻辑&#xff0c;我们特别将静态方法都摘成各个功能的脚本&#xff0c;这些脚本用这种写法&#xff0c;便可少写代码&#xff0c;且条理。 什么脚本能用&#xff1f; 用来存放&#xff0c;不涉及MonoBehaviour生命周期方法的&#xff0c;只存放静态方法的脚本。 因为继承了SingletonBase&#xff0c;目标脚本便不可继承MonoBehaviour。
目标脚本便不可挂在场景中&#xff0c;不可使用MonoBehaviour生命周期&#xff08;小声BB&#xff09;
&#x1f6a9; 怎么用&#xff1f; 1.SingletonBase、静态脚本放在Asset即可&#xff0c;不必挂在场景 2.使用脚本&#xff0c;挂在场景即可。
SingletonBase脚本
public class SingletonBase< T> where T : new ( ) { public static T Single { get ; protected set ; } &#61; new T ( ) ; }
&#x1f6a9;目标脚本&#xff1a; using UnityEngine ; public class Test_01 : SingletonBase< Test_01> { public void Skode_Debug ( ) { Debug. Log ( "hello" ) ; } }
&#x1f6a9;如何使用目标脚本&#xff1a; using UnityEngine ; public class Test_02 : MonoBehaviour { private void Start ( ) { Debug. Log ( Test_01. Single. a. Length) ; Test_01. Single. Skode_Debug ( ) ; } }
大家还有什么问题&#xff0c;欢迎在下方留言&#xff01; 如果你有 技术的问题 或 项目开发
都可以加下方联系方式
和我聊一聊你的故事&#x1f9e1;