静态变量
比如有一个银行账户account类,account有三个成员变量,账户名,储蓄金额和利率。
我们知道,每个人的账户名和储蓄金额是不同的,但利率都是相同的。
这个利率就是一个静态变量。
静态变量由关键字static
修饰
静态变量为整个类所公有,而不被独立地属于某个类对象,因而静态变量可以使用类名直接访问,也可以使用对象进行访问。
// account.java
package Java;
public class account {
// 实例变量账户金额
double amount = 0.0;
// 实例变量账户名
String owner;
// 静态变量利率
static double interestRate = 0.0688;
// 静态方法
public static double interestRy(double amt) {
// 静态方法可以访问静态变量和其他静态方法
return interestRate * amt;
}
static {
System.out.println("the static code is being executing\n");
interestRate=0.0668;
}
// 实例方法
public String messageWith(double amt) {
// 实例方法可以访问实例变量、实例方法、静态变量和静态方法
double interest = account.interestRy(amt);
StringBuilder sb = new StringBuilder();
// 拼接字符串
sb.append(owner).append("'s interest is ").append(interest);
// 返回字符串
return sb.toString();
}
}
package Java;
public class use {
public static void main(String[] args) {
//
System.out.println((account.interestRate));
//
System.out.println((account.interestRy(1000)));
account myAccount = new account();
//
myAccount.amount = 1000000;
myAccount.owner = "lmy";
System.out.println(myAccount.interestRate);
System.out.println(myAccount.messageWith(1000));
}
}
静态方法
静态方法可以访问静态变量和其他静态方法,但不能访问实例方法
实例方法可以访问实例变量、其他实例方法、静态变量和静态方法