一。代码
(1)
public class statictest {
public static void main(String args[]){
statictest tm=new statictest();
tm.printSxt();
int c=tm.add(30,40,50)+1000;
System.out.println(c);
}
void printSxt(){
System.out.println("1111");
System.out.println("2222");
System.out.println("3333");
}
int add(int a,int b,int c){
int sum=a+b+c;
System.out.println(sum);
return sum;
}
}
(2)
//测试static关键字
//类信息 首先加载进方法区(代码 静态变量(company) 静态方法(printCompany) 常量("河南理工"等))
//普通对象方法 从属于对象
//静态变量和方法可以调用静态方法。静态方法里面不能使用非静态方法(所以this不能在static中使用)
//普通变量和方法可以调用静态方法
public class user2 {
int id;
String name; //用户名
String pass; //密码
static String company="河南理工";
public user2(int id,String name){
this.id=id;
this.name=name;
}
public void login(){
System.out.println("登陆");
}
public static void printCompany(){
//调用非静态成员就会报错
System.out.println(company);
}
public static void main(String[] args){
user2 u=new user2(1,"吴");
user2.printCompany(); //通过类名去调用
user2.company="阿里巴巴";user2.printCompany(); //通过类名去调用
}
}
(3)静态初始化(类初始化)
public class user3 {
int id;
String name;
String pass;
static String company;
static{
System.out.println("执行类初始化");
company="111";
printCompany();
}
public static void printCompany(){
System.out.println("执行完成");
}
public static void main(String args[]){
user3 u=null;
}
}
二。笔记
1.static声明的成员变量为静态成员变量,也称为类变量。类变量的生命周期和类相同,在整个应用程序执行期间都有效。
2.static 修饰的从成员变量和方法从属于类,普通变量和方法从属于对象。