成员变量和方法
一、成员变量
我们都已经知道类体内容有两个成员:成员变量和方法
成员变量用来刻画类创建的对象的属性,其中一部分成员变量称为实例变量,另一部分称为静态变量和类变量。
在定义成员变量时可以对其初始化,java使用默认的值对其初始化。如图所示:
成员变量的作用范围是整个类体,类是对象的类型
用static修饰的成员变量称为静态变量或类变量,而没有使用static修饰的成员变量称为实例变量。
如:
class A{
float x;
static int y;
}
一个类通过使用运算符new可以创建多个不同的对象。不同的对象实例变量将被分配到不同的内存空间。
二、常量
如果一个成员变量修饰为final ,就是常量,常量的名字习惯用大写字母,如final intMAX;
final修饰的成员变量不占内存,意味着在声明final成员变量时必须初始化。对于final修饰的成员变量,对象可以操作 使用,但是不可以更改文件操作。
如:
class Tom{
final int MAX=100;
static final int MAX= 20;
}
public class Example4_5{
public staitc void main (String args[]){
System.out.println(Tom.MIN);
Tom cat = new Tom();
int x= 0;
x=Tom.MIN+cat.MAX;
System.out.println(x);
}
} 三、方法
方法分为构造方法、实例方法和类方法。
类所创建的对象可以调用这些方法形成一定的算法,体现对象的某些具体功能。
方法的定义包括两部分:方法声明和方法体。格式如下:
方法声明部分{
方法体的内容
}
实例方法和类方法
(1)实例方法必须通过对象来调用
当某个对象调用实例方法的时候,该实例方法中成员变量被认为是分配给该对象的成员变量,类变量与其他对 象共享所以实例方法既可以操作实例变量,也可以操作类变量
(2)类方法可以通过类名调用
对于类中的方法,在该类被加载到内存,就分配了相应的入口地址,即使该类没有创建对象也可以通过类名直接 调用类方法。
如:
class Computer{
double x, y;
staitc double max(double a, double b){
return a>b?a:b;
}
}
class Example4_6{
public static void main (String args[]){
double max= Computer.max(12,45);
System.out.println(max);
}
}