【发布时间】:2012-04-01 12:52:16
【问题描述】:
我有一个代表游戏会话的类,我想要某种顺序,以便我可以做这样的事情:
public class Session
{
public static class Rooms
{
// All the things about session's rooms etc
public static void Load()
{
// Load stuff...
}
}
public static class Details
{
// All the session details (username, age...)
}
// etc
}
这样,一切都更有条理,每个嵌套类都可以处理特定的东西......
但是,当然,有一个问题......
当我有一个 Session 类的实例时,我尝试执行以下操作:
Session x = new Session();
x.Rooms.Load();
我收到这样的错误:
无法通过表达式引用类型。改用“Program.Session.Rooms”。
请给点提示?
【问题讨论】:
-
你到底在想什么????!!!??为什么
Rooms和Details必须是静态的?为什么不直接将Session设为静态?为什么不直接将这两个属性公开为...属性? -
会话不能是静态的,因为每个实例代表不同的游戏会话...
-
您意识到
Rooms和Details也是如此,对吧?它们只能有一个实例。 -
那么为什么任何东西都必须是静态的?
-
@slugster 我认为可以让非静态类拥有自己的静态嵌套类...