日期:2014-05-17  浏览次数:20879 次

请教一个比较初级问题!关于类内部方法调用
大家好,
我设计一个类,类中有很多方法,例如 f1(),f2(),f3(),f4()等等,

其中f4()方法被其他几个方法经常调用;请问f4()这个方法怎么写,是不是要声明成静态方法呢,还是可以有其他办法解决这个问题。

------解决方案--------------------
可以声明成静态的
------解决方案--------------------
其中f4()方法被其他几个方法经常调用;
===================
是被外面的类其他方法经常调用,还是被本类其他方法经常调用?

看你实际需要,无所谓要特别强调是否声明静态不静态的,都可以
------解决方案--------------------
如果调用的方法是静态的,那被调用的方法也最后声明成静态的
------解决方案--------------------
不用,和其他方法访问性定义一致;如果是重载,f4一般定义为访问参数最全的一个方法,然后其他方法访问它。
------解决方案--------------------
类内部方法调用,你还声明静态的干嘛?
果断非静态
------解决方案--------------------
静态函数是指他属于这个类,而不属于这个类的任何实例,如果这个函数不需要这个类的实例,就可以声明为static ,而这个函数涉及到这个类的实例,则不能。

------解决方案--------------------
建议楼主看一下静态方法和非静态方法的区别。了解以后就明白了
------解决方案--------------------
如果是类内部调用,自然不需要声明为静态。
------解决方案--------------------
内部调用就是个普通方法。不需要静态的。
------解决方案--------------------
如果f4()被如此频繁的调用,那么这个方法是不是应该进入父类,或者干脆做一个工具类?
------解决方案--------------------
非静态方法可以调用静态方法
静态方法不可以调用非静态方法
------解决方案--------------------
这些 都是常用的,经常会有,私有方法一般都是类内部调用
------解决方案--------------------
完全没有必要,和其他方法一样。
------解决方案--------------------
状态无关的静态优先