是时候去探究主函数中的static了
public static void main(String[] args) {
之前在创建类的时候都没有需要输入static,现在来看看static有什么作用。
static 静态、
package clock;
public class woti {
private static int step =1 ;
public static void main(String[] args) {
// TODO 自动生成的方法存根
woti x = new woti();
woti x1 = new woti();
System.out.println(x.step);
System.out.println(x1.step);
x.step = 4;
System.out.println(x.step);
System.out.println(x1.step);
}
}
建立了一个静态整型变量int step ,当我们在主函数中令对象x的step值等于4 ,我们输出的时候发现所有的对象step的值都等于4了
换用另一个方式
woti.step = 3 ;
也可得到相同的效果
还发现,只有用static修饰的时候,才可通过类直接修改变量的值。
被static修饰的变量可以用类去直接访问。
staic修饰的变量称为类变量,属于类不属于对象,这个变量不在对象里==
也就是说类自带了一个变量,因为对象属于类,所有也可通过对象去访问修改类变量
类函数,一个类自带的函数。表示这个函数不属于任何对象,它属于这个类
无法调用函数。
函数前面有static 表示函数不属于任何对象,它属于一个类。
如果不加对象,程序不知道该调用哪个类里的函数
当在函数前加static 就表示函数属于类,那么在主方法中就可调用类函数
当是我们在类函数里访问类里的变量时会出错
他不知道该去访问谁的yuan这样就可行了,将类里的变量变成类变量,去访问类;
简单来说,static函数只能去访问有static的函数
在
只对yuan进行初始化一次(类的装载)
static的初始化和类的对象创建无关系。
类不是实例,类函数也不是实例函数。
在类函数中没有this
补充一下this主要的三个应用:
(1)this调用本类中的属性,也就是类中的成员变量;
(2)this调用本类中的其他方法;
(3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。