C# 中两个类没有同一个命名空间,没有同一个基类,没有继承关系。也可以互相访问数据!

原理就是!A类是一个国家,叫中国,B类也是一个国家叫俄罗斯,A类想要访问B类中的变量和方法!可以让B类俄罗斯在中国派驻一个大使馆,使馆使者也就是B类的实例化对象

(B oneB=new B())

oneB就相当于B派出的大使馆使者!oneB可以在别的国家(A类中)直接调用B类中公共函数和变量(前面带有Public 的都是公共变量和方法)

1.在A类中之间实例化B类的对象(B的使者)

在一个类A中,将另一个类B作为普通类型声明变量即可(也就是实例化对象),类似 int A ,float A

这样就可以通过B实例化对象访问B类中全部数据!而此时B的实例化对象,身在他乡,在A中就可以发挥作用!但是这相当于给B复制了一份!这种情况更适用于:

在一个类中调用另一个类的方法!

如果是另一个类中有一个变量需要被改变和实时维护,更适合用静态变量!

代码示例

using UnityEngine;

using TMPro;//引用文本UI插件

public class Score

{

public leoyang one;

private void Awake()//比start先执行,仅仅执行一次

{

Debug.Log(one.A = 15) ;

}

}

public class leoyang

{

public int A = 10;

}

GameObject

2.B类中声明静态变量或方法,在他国A中就可以之间通过B的类名访问其静态变量

public static float one=10;

文章链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: