有些类提供一些类似“工具”的方法,不需要new一个这样的对象,再来调用它所提供的方法。
比如:Console类,new一个Console感觉上就是多此一举。
再比如:Math类,提供一些众所周知的数学函数计算,new一个Math类,再调用诸如:
MyMath.Sin(?);
MyMath.Cos(?);
感觉上别扭,也像是多此一举样。当你发现有样的类时,你就会感觉到需要把它们定义为静态类了。再举个例子,比如你写一个“俄罗斯方块”的游戏。
游戏中一供有七种不同的块,每个方块有四种不同的状态。
你可以有两种选择:
1、每回合new一个新的方块,供玩家移动和调整;
2、程序运行时,直接生成七个静态的方块,每回合移动和调整的,只不过是其中一个方块在不同位置的显示;
另外,整个“游戏”就是一个Game类,需要动态new一个,再MyGame.Star()吗?
或是直接Game.Star()来得自然一些呢?遇多了,你就有感觉了,慢慢来。
比如:Console类,new一个Console感觉上就是多此一举。
再比如:Math类,提供一些众所周知的数学函数计算,new一个Math类,再调用诸如:
MyMath.Sin(?);
MyMath.Cos(?);
感觉上别扭,也像是多此一举样。当你发现有样的类时,你就会感觉到需要把它们定义为静态类了。再举个例子,比如你写一个“俄罗斯方块”的游戏。
游戏中一供有七种不同的块,每个方块有四种不同的状态。
你可以有两种选择:
1、每回合new一个新的方块,供玩家移动和调整;
2、程序运行时,直接生成七个静态的方块,每回合移动和调整的,只不过是其中一个方块在不同位置的显示;
另外,整个“游戏”就是一个Game类,需要动态new一个,再MyGame.Star()吗?
或是直接Game.Star()来得自然一些呢?遇多了,你就有感觉了,慢慢来。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货