就比如说吧:
静态变量就像是饭堂公用的餐具,大家都可以去用。所以只要准备一套餐具就可以供给很多人用。
非静态变量就像是学生自己的餐具。就像中国学生都有筷子,但是没刀叉。美国学生有刀叉但是没筷子。饭堂又只有盘子。所以中国学生想要用刀叉就只能找到美国学生,再和他借。所以要先建立美国学生的对象,然后才能调用他的方法或变量(刀叉),反之亦然。如果中国学生毕业了,离开学校了,就会把筷子带走,学校里面就不用腾出个地方给中国学生放筷子了,美国学生也一样。
本来饭堂只要腾出地方放盘子供给各学生用就可以了,但是如果筷子和刀叉全部都放在饭堂,那中国学生和美国学生毕业走了,却带不走筷子和刀叉。后面进来日本学生用的是勺子(打比方)用不到刀叉或者筷子,这样饭堂存放刀叉和筷子的空间就浪费了。
所以这学校就像是内存,学生就是那对象,饭堂就是那静态区。用静态变量有利有弊。 |