1. 首页 > 科技

program类中的静态方法使用为什么不用加类名?

在同一个类的静态方法不用类名调用,直接调用就可以吗??

program类中的静态方法使用为什么不用加类名?

静态方法与对象不是绑定一起的,当编译阶段就可以使用的.所以使用的时候,不用声明对象就可以使用,你可以上机一个小程序测试一下,错误的地方都会有提示的.

Java中!泛型中的静态方法是不是不用类名加方法名?还是直接通过方.

亲,你这里面不牵涉泛型.静态方法里只能调用本类的静态方法,所以你的toarray必须是静态才能被main调用.静态方法在其他类中可以直接通过类名.方法调用

JAVA本类中调用本类的静态方法为什么可以省略类名?

因为该类的静态方法是程序启动时自动放在内存中了的,是属于程序的公共内存(但只能访问),而类名在这里你可以理解为命名空间.先通俗的分析下,我们把类看作是.

类的静态方法(函数)中为什么不能调用非静态成员(属性)?.

程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被访问.类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问.在一个类的静态成员中去访问其非静态成员之所以会出错是因为在类的非静态成员不存在的时候类的静态成员就已经存在了,访问一个内存中不存在的东西当然会出错:class CA{private:int a; //非静态成员,创建类的实例时分配内存,类的不同实例对应不同的内存区域

什么时候用静态变量 静态方法?为什么要使用静态变量 、静态方法?

当我在某项目中需要调用其他项目中某个类的方法时,我可以不用实例化这个类,可直接调用类名访问该方法,这个方法就必须声明为静态方法,通常用做工厂方法.静态变量只能被静态方法调用,静态变量是属于整个类.

静态方法或变量为什么不用new

静态变量和静态方法是不需要类的实例就可以访问,比较方便.比如 class test { public void foo(){.} public static void staticfoo() {.} }// 调用foo需要test的实例 test test = new test(); test.foo();// staticfoo可直接调用 test.staticfoo();相当于c/c++的全局变量和全局方法 一般某类里的静态方法和函数都是跟这个类型本身有联系的 另一方面,c#是面向对象的,所有的函数和方法都必须属于某个类型

java中静态方法为什么不用实例化

静态方法,静态类都是直接就在程序运行的时候就加载了.实例化是我们在需要使用某个方法的时候才去实例化类,再调用方法

请问为什么静态方法中不能调用非静态方法

静态方法的内存分配时间与实例方法不同 当程序开始运行时,静态方法已经在内存中被分配了空间,有了入口地址,所以可以通过"类名.方法名"直接调用 而实例方法只有在创建了该类的对象以后才分配内存 也就是说程序开始运行后静态方法已经有了入口地址,而此时实例方法可能并未被分配内存,所以无法通过静态方法调用实例方法 同理也不能用"类名.方法名"的方式调用实例方法

java的工具类的方法不是静态的为什么可以通过类名访问

equals方法的作用是比较两个对象是否相等.那么如果这个方法是static的,可以通过类名调用,那么你比较的就不知道是什么东西了,从逻辑上就根本说不通了.所以equals这个方法只能是非static的,通过对象调用,传入另一个对象作为参数,这样才可以对两个对象进行比较.也就是说,所有类的equals方法都是非静态的 .

java调用静态类的方法时是不是可以直接 类名.方法,而调用非静态类方.

你好,你的理解大体上是对的.但是严格的说,上述必须在类外部调用才成立.而且1.5之后有了静态方法导入,可以不用写类名,直接调用静态方法.“调用非静态类方法时候需要new个类再 对象.方法”这句准确的说“调用非静态类方法时候需要new个对象出来,再 对象.方法”以上的所有调用必须严格满足访问权限.也就是私有、包级私有、受保护、公共.