public class Jitutonglong { /** * 鸡兔共94个脚,35个头 *设鸡m,兔n,脚x,头y */ static int x,y,m,n; public static void main(String[] args){count(94,35);} // TODO Auto-generated method stub private static void count(int x,int y){ /* * 2m+4n=x; * m=n=y; * "="左边不能为常量,不能写为 x=“...” * 只能化为 n="..." * m="..." */ n=x/2-y; m=y-n; System.out.println("鸡有"+m+"只"); System.out.println("兔有"+n+"只"); }}
因为static 的函数不能直接使用非static的成员变量,所以既然main必须是static的, 那么它直接用的成员变量也必须是static的这个问题的症结在于有些人用java编程却用c的方式思考,于是为了满足语法要求,程序里到处都是脱裤子放p的事,“Thinking in Java"!!, 这书名比整本书的内容都更有意义
static有两种:一种加在数据成员前面,一种加在函数成员前面。加在数据成员前面这个数据就成为“静态数据成员”,就是说这个数据不会属于任何一个对象,它属于类。因此也可以通过类名初始化。它与普通数据成员的区别是:普通数据成员属于一个实价对象,对象消失后它也就消失了。而静太数据成员则属于整个类,任何对象都可以对它进行操作。 打个比方:比如有一群人,每个人是一个对象,有各自的年龄,而整个人群的总年龄就可以肜静态数据来表示。
1static关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类2static修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量;一个对象对该静态成员变量进行了修改,其他对象的该静态成员变量的值也会随之发生变化。如果一个成员变量是static的,那么我们可以通过类名.成员变量名的方式来使用它(推荐使用这种方式)。 3 static修饰方法:static修饰的方法叫做静态方法。对于静态方法来说,可以使用类名.方法名的方式来访问。 20. 静态方法只能继承,不能重写(Override