可以把两个类放在同一个文件中,但是文件中只能有一个类是公共类,且类名与文件名相同。
- 构造方法必须和所在的类名相同
- 构造方法没有返回值类型,甚至连void也没有。
*构造方法在创建对象时用new操作符调用。可以有多个同名但是签名不同的构造方法。
静态变量被类中的所有对象共享。静态方法不能访问类中的实例成员。
静态变量将变量值存储在一个公共的内存地址,所以如果某一个对象修改了静态变量的值,那么同一个类的所有对象都会受到影响。
实例方法可以调用实例方法和静态方法,访问实例变量和静态变量。静态方法不能调用实例方法和实例变量。
例:
public class test{
public static void main(String[] args){
T t1= new T();
T t2=new T();
System.out.println("t1's i="+t1.i+"and j="+t1.j);
System.out.println("t2's i="+t2.i+"and j="+t2.j);
}
}
class T{
static int i = 0;
int j=0;
T(){
i++;
j=1;
}
}
输出为:
t1's i=2and j=1
t2's i=2and j=1