我正在制作一个有几个类的游戏,每个类都执行某种特定的任务。
我对 OOP 完全陌生,我想知道我应该怎么做才能让我的类实例在彼此之间进行通信,而不会重复使用静态类、方法和属性,这似乎是一件可怕的事情。
我是自学成才的程序员,我意识到我做了很多不好的做法。到目前为止,我设法使这两个类都成为静态的,但我想知道我应该怎么做才能使我的代码尽可能好。
另外,如果您能向我推荐一些资源/书籍/文章,那将是很好的,这样我就可以阅读有关该主题的更多信息(实例之间的通信)。
这是一段代码,所以你明白我在说什么。
class Program
{
static void Main(string[] args)
{
Class1 instance1 = new Class1();
Class2 instance2 = new Class2();
// infinite loop
while (true)
{
instance1.UpdateMethod(someValue);
instance2.UpdateMethod();
}
}
}
class Class1
{
int Property;
UpdateMethod(int argument)
{
Property += argument;
if(Property == 3000)
{
// I should change the state of instance2
}
}
}
class Class2
{
UpdateMethod()
{
if(Time.GetTime() == SomeTime)
{
// here I want to change the state of instance1
}
}
}