A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题!他有时候写函数还专门避开用静态的,说生存周期太长,太占资源,但是在讲String类练习的时候写的函数全部都是静态的,不理解,求解释!

10 个回复

倒序浏览
老师为了方便不new对象了.静态方法直接用多省事.

但是要区分什么时候用什么时候不用.

静态方法.比如你写自己的utils工具类的时候最好使用静态方法.

还有就是你定义的常量,能用静态首先选择静态,在没有什么影响的时候.

你要理解老师,要心疼老师奥..
回复 使用道具 举报
刚想起来个原因,拿13天07为例,是不是因为主函数是静态的,所有函数都跟主函数在一个类中,所以主函数调用的必须是静态函数?怎么感觉这个原因有些牵强呢?要这么说的话主函数调用别的类的函数就可以是非静态的,调用本类的就必须是静态的?有些迷了!求解释!
回复 使用道具 举报
{:soso_e103:}  因为main函数是静态的,只能调用同一个类的静态方法,为了方便演示,所以在课程里面所有被主函数调用的方法都写成静态的。
回复 使用道具 举报
静态方法可以直接调用而不用实例化对象我想是因为这样的,
回复 使用道具 举报
这个只是在讲解基础。为了方便而已。但是开发的时候不要这样做
回复 使用道具 举报
彭嘉聪 黑马帝 2012-2-16 17:00:56
7#
因为静态方法和类字节码是统一地方存储的,而对象和非静态方法是动态链接的,所以你没有对象何来调用非静态方法?
要明白面向对象原理,是把功能封装到对象中,
静态则是不用创建对象的直接用的,可以演示为了方便就采取了方法都设为静态的方法
回复 使用道具 举报
刘明瑞 黑马帝 2012-2-16 17:02:39
8#
用静态的方法,用起来不是很方便么
回复 使用道具 举报
戚雪晖 黑马帝 2012-2-16 22:35:22
9#
刘明瑞 发表于 2012-2-16 17:02
用静态的方法,用起来不是很方便么

静态相当于共享,类一加载他就跟着存在了,这样即使不用这个方法的话,这个方法一直在内存中,消耗资源
回复 使用道具 举报
老师是方便讲课,写static直接调用,不用创建对象那么麻烦了,你自己知道就行了,没有什么的!
回复 使用道具 举报
静态方法在类一加载到内存中就存在了,不用new对象,另外因为main方法是静态的,所以为了方便使用才这样做,但是这样做太占内存空间,老师是为了讲课的需要才这么做的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马