第十八课 面向对象的基本概念(3)
类的成员变量:我们在定义类的成员变量时,包括两个部分,其中第一部分是类型说明,第二个部分是成员名。在定义类型的时候我们要考虑以下三个方面
①变量的访问权限
②是否为静态变量
③是否为常量
一、静态变量:分为成员变量和非成员变量,如:
class A{
int a;
void B(){
int b;
}
}
在这里面 a为成员变量,而b则为非成员变量
又如:
class A{
static String a;
String b;
}
这里面我们称a为类变量,那么a 和b 的区别是,当同时赋给两个不同的对象时,a只占一个存储空间,而 b则占两个存储空间
我们来看这样一个例子:
import java.lang.Math;
public class StaticTest{
static double Pi=Math.PI;
static double E=Math.E;
static double A=149.6/100;
static double Mercury,Venus,Earth;
static{
Mercury=0.387099*A;
Venus=0.723332*A;
Earth=A;
}
public static void StaticTest(){
System.out.println("/nPI="+Pi+"/nE="+E);
System.out.println("行星与太阳的距离为:");
System.out.println("水星"+Mercury+"/n金星"+Venus+"/n地球="+Earth);
}
public static void main(String args[]){
StaticTest s=new StaticTest();
double s1=Math.PI+Math.E;
s.StaticTest();
System.out.println("/nEarth="+s.Earth);
}
}
说明:
1、静态方法只能被其它静态方法调用
2、其子类不能有同名同参数的方法
3、静态变量是全局变量,可以在任何地方调用
4、要成批初始化静态变量,可用静态块
二、常量:一但定义无法修改
我们来看一个错误的例子:
public class FinalTest{
public static void main(String args[])
{
final int a=10;
a=20;
System.out.println(a);
}
}
第十八课 面向对象的基本概念(3)
最新推荐文章于 2024-03-03 10:06:32 发布