试题详情
- 简答题什么是类变量和类方法?
-
static可以用来修饰类的成员变量或成员方法,分别称为类变量(或静态变量)和类方法(或静态
方法)。相应地,没有被static修饰的类的成员变量或成员方法称为实例变量或实例方法。
1.类变量
在生成每个类的实例变量时,Java运行系统为每个对象的实例变量分配一个内存空间,实例变量指向该内存空间,不同的实例变量占用不同的内存区域。对于类变量来说,Java运行系统为类的类变量分配公共的存储空间,该类的每个实例对象共享同一类变量的存储空间。因此,每个对象对类变量的修改都会影响其他实例对象。
类变量可以通过类名直接访问,也可以通过实例对象来访问,都是对同一内存单元的操作, 类变量的使用具有如下特点:
(1)类变量可以通过类名直接访问,而不需要创建对象
(2)任何一个对象对类变量的修改,都是在同一内存单元上完成的。因此,每个对象对类变量的修改都会影响其他实例对象。
2.类方法
声明为static的方法称为类方法(或称静态方法),与此相对,没有static修饰的成员方法则为实例方法。类方法的本质是该方法属于整个类,而不是属于某个实例,可以不创建实例,直接通过类名调用。
类方法的使用具有以下特点:
(1)类方法可以通过类直接调用,而不需要创建实例对象。例如:Java Application的入口main()方法就被声明为static类方法,可以不需要创建任何实例对象对调用。
(2)类方法属于整个类,被调用时可能还没有创建任何对象实例,因此类方法内只可以访问类变量,而不能直接访问实例变量和实例方法。
(3)类方法中不能使用this关键字,因为静态方法不属于任何一个实例。 关注下方微信公众号,在线模考后查看
热门试题
- 下列属于jsp中注释的有()
- 按照下面要求编写程序:编写一个JFram
- 下列程序的运行结果是()。
- 设有Strings=newString(
- 子类将继承父类所有的属性和方法吗?为什么
- 以下哪些方法是LinkedList集合中
- 下列哪一项说法最好地描述了Java中的对
- 简述JFrame框架的基本结构。
- 编写一个程序包含一个列表和两个标签,在第
- Java语言具有较好的安全性和可移植性及
- 获取数据库连接的方法是()。
- 关于以下程序段,正确的说法是()。
- 设有整型数组的定义inta[]=newi
- Java2技术中,常用于嵌入式设备及消费
- 请使用异或运算符^,实现两个整数的交换。
- 序列化对象使用ObjectOutputS
- 方法中的()关键字用来表示方法不返回任何
- 一般地,内部类又分为定义在方法体外的()
- 设有a=2,b=3,则a&&b的结果是(
- s=s.replaceAll("he",