Android-实例成员与类成员

实例变量与类变量

类体中包括成员变量的声明和方法的定义,而成员变量又可以细分为实例变量、类变量

声明成员变量时,用关键字static给予修饰的称作类变量,否则称作实例变量(类变量也称static变量,静态变量)

如:
class Dog{
float x //实例变量
static int y //类变量
}

实例变量和类变量区别:

1.不同对象的实例变量互不相同
2.所有对象共享类变量
3.通过类名直接访问类变量

实例代码:
public class Ladder{
double top;//实例变量
static double bootom;//类变量
public double getTop(){
return top;
}
public void setTop(double Top){
this.top = top;
}
public static double getBottom(){
return bottom;
}
public static void setBottom(double Bottom){
Ladder.bottom = bottom;
}
}
public class Deom18{

public static void main(String[] args){
    Ladder.bottom = 100;
    Ladder ladder1 = new Ladder();
    Ladder ladder2 = new Ladder();
    ladder1.setTop(50);
    ladder2.setTop(50);
    System.out.println("ladder1的上底:"+ladder1.getTop());
    System.out.println("ladder2的上底:"+ladder2.getTop());
    System.out.println("ladder1的下底:"+ladder1.getTop());
    System.out.println("ladder2的下底:"+ladder2.getTop());
}

}

实例方法与类方法

类中方法可分为实例方法和类方法,方法声明时,方法类型前不加关键字static修饰的是实例方法,加static修饰的是类方法(静态方法)

如:
class A{
int a;
float max(float x,float y){ //实例方法

}
static float jerry(){ //类方法

}
static void speak(String s){ //类方法

}
}

实例方法与类方法区别:
1.对象调用实例方法

当对象调用实例方法时,该方法中出现的实例变量就是分配给该对象的实例变量;该方法中出现的类变量也是分配给该对象变量,只不过这个变量和所有的其他对象共享而已

2.类名调用类方法

类方法不仅可以被类创建的任何对象调用执行,也可以直接通过类名调用,和实例方法不同的是:类方法不可以操作实例变量,这是因为在类创建
对象之前,实例成员变量还没有分配内存

代码:
public class Deom17{

public static void main(String[] args){

    System.out.println("1-10之和:"+Sum.getSum(1,10));
}

}
class Sum{
static int getSum(int start,int end){
int sum = 0;
for(int i=start;i sum+=i;
}
return sum;
}
}

你可能感兴趣的:(Android)