java中都有哪些类型的方法,如何调用它们?
来源:百度知道 编辑:UC知道 时间:2024/06/07 04:32:20
这个从关键字来理解啊,
1. 如果方法定义前面加final,说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。
2. 如果方法定义前面加static,表示静态方法,方法和类关联,直接由类名来调用。
3. 如果方法定义前面加abstract,表示抽象方法,由继承类来实现。
4. 对于方法前面的public, private,protected等这些是控制方法可以被调用的范围。
5. 如果方法定义前面有native,Native方法是由另外一种语言(如c/c++,FORTRAN,汇编)实现的本地方法。因为在外部实现了方法,所以在java代码中,就不需要声明了,有点类似于借口方法,一般用不着。
6.如果方法定义前面加synchronized,表示当前方法体是一个临界区,通过锁机制来控制多个线程同步,在多线程应用里面经常使用。
抽象方法必须定义在抽象类里,如果一个类有抽象方法必须是抽象方法!还要抽象类不能实例话对象
实例:
package 百度知道;
public abstract class Test2 {
public void fun1()
{
System.out.println("fun1");
}
public abstract void fun2();
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Test2 obj;
}
}
静态方法和非静态方法的区别就是:
静态方法可以用类和对象调用,而非静态方法只能用对象调用:
实例:
public class Te