静态方法是由类来调用的,而不是由对象调用的,正因为有了静态方法,才使得我们可以在不对类进行实例化(即不创建对象)的情况下调用成员方法。代码如下
public class Clock { //创建类
String structure;//声名成员属性
String style;
double price;
public Clock(String structure,String style,double price) { //构造方法
this.structure=structure;
this.style=style;
this.price=price;
}
public static void getTime() { //创建静态方法
System.out.println("当前时间:10点10分");
}
public static void main(String[] args) { //创建主方法
Clock bell=new Clock("机械","钟",189.99);
System.out.println(bell.structure+bell.style+"的价格为"+bell.price+"元RMB");
getTime();
Clock watch=new Clock("石英","手表",69.0);
System.out.println(watch.structure+watch.style+"的价格为"+watch.price+"元RMB");
Clock.getTime();
}
}
输出结果为:
机械钟的价格为189.99元RMB
当前时间:10点10分
石英手表的价格为69.0元RMB
当前时间:10点10分
如本例中为钟表类,在程序中创建了一个静态的获取时间的方法,代码如下
public static void getTime() {
System.out.println("当前时间:10点10分");
}
这个方法前面用了static 进行修饰了,那么他就是一个静态的方法,我们可以在不创建对象的前提下调用他(当然我上面程序中已经创建了对象,但是我并不是用对象去调用这个静态方法的)。调用他有以下方法:
1、直接写函数名
public static void main(String[] args) {
getTime();
}
输出结果为:
当前时间:10点10分
2、使用类来调用他
public static void main(String[] args) {
Clock.getTime();
}
输出结果为:
当前时间:10点10分
3、我们也可以用对对象来调用他(当然我们首先得先创建一个对象)
public static void main(String[] args) {
Clock watch=new Clock("石英","手表",69.0);
System.out.println(watch.structure+watch.style+"的价格为"+watch.price+"元RMB");
watch.getTime();
}
输出结果为:
石英手表的价格为69.0元RMB
当前时间:10点10分