Java编程有一处不是很明白?求高手解答?谢谢!

2025-02-24 08:40:18
推荐回答(3个)
回答1:

恩,这是必须有的,static修饰的叫做静态xx,修饰变量就叫静态变量,修饰函数就叫静态函数。
谈谈static的作用吧,给你个例子:

如果 readDouble 函数不加 static,那么在调用的时候,就需要有一个 Input的实例对象才能调用,如下:
Input input = new Input();
double d = input.readDouble();

而对于static方法而言,不需要实例变量就可以直接用类名来调用,就跟你main函数中的一样

double d = Input.readDouble();

从这个例子中,可以发现,static修饰的变量或者函数,那么这些变量和函数就是属于“类”这个范围的,因此可以直接用类名来调用

而没有static修饰的变量或者函数,那么这些变量和函数就是属于类的实例对象的,就需要new 出一个实例对象之后,才能进行调用

回答2:

static 修饰的是静态成员和变量
要说这个就要说到 类和实例对象的关系

static 修饰的是类的属性和方法, 只要有了这个类, 就有这些方法和属性了,
没有static修饰的属性和方法是对象的属性和方法, 只要创建出对象,才能使用

一般工具类都用static 修饰是因为, 工具类对于每一个使用他的对象来说, 它都是一样的, 只有一个,所以不用创建新对象, 那就用static 可以能过类名 直接使用

回答3:

static表示这个函数或变量是类函数或类变量,可以之间通过类名访问.还有static变量是唯一的 与对象无关