java中,关于类中的方法的调用有哪些? 5
我先把我知道的说出来第一种:如果这两个类在同一个包中,比方说有A类,B是静态类的话,首先要把A类给实例化成一个对象a,然后a.B()就可以调用呢。第二种:如果两个类不在同...
我先把我知道的说出来
第一种:如果这两个类在同一个包中,比方说有A类,B是静态类的话,首先要把A类给实例化成一个对象a,然后a.B()就可以调用呢。
第二种:如果两个类不在同一包中,需要导类,比放说有一个A类,,首先要在B类中导入A类的包,现在我想使用A类的方法在B类中用,如int a = A.方法() 这样也行吗? 展开
第一种:如果这两个类在同一个包中,比方说有A类,B是静态类的话,首先要把A类给实例化成一个对象a,然后a.B()就可以调用呢。
第二种:如果两个类不在同一包中,需要导类,比放说有一个A类,,首先要在B类中导入A类的包,现在我想使用A类的方法在B类中用,如int a = A.方法() 这样也行吗? 展开
展开全部
Java中主类不可以用static修饰,也就是不能为静态的。但是可以作为某个类的内部类用static修饰。如果B是A的静态内部类,可以直接用A.B调用。因为static修饰的成员是属于类的,不是对象,可以直接调用。
——————————————————
A,B两个类,在B类里,需要先实例化A类,然后再用A的对象去调用其中的方法
A a=new A(); a.A的方法();
——————————————————
A,B两个类,在B类里,需要先实例化A类,然后再用A的对象去调用其中的方法
A a=new A(); a.A的方法();
追问
那如果a想调用B类中的方法,且A,B类在同一个包中,这样可以吧,
如果B类和A类不在同一个包中,我导入B类的包,A类的实例化对象a也能调用B类的方法吧,
可是有一点我想不通,就是我导入B类包后,我用A类实例化对象可以这样,就是不用new来实例,,比方说:如下
A a=B.method("哈哈")。
这样写,不也实例化一个对象a,,根本就没有new呀,,问什么可以这样,,而且这种形式很多!
追答
一个个回答
第一a想调用B类的方法,是不可以的,因为a是A的实例,只能用自己的。怎么可能调用B的方法呢。不管在不在同一个包里
A a=B.method("哈哈")。
你要明白,对象是引用类型,是可以传递引用的。类型一样就可以。至于你这句话,
class B{
public static A method(Object obj){
return new A();
}
}
A a=B.method(“xxx”);
B直接调用自己的方法,那么该方法肯定是static修饰的,至于为什么可以这样写,是因为B的method方法,返回的就是A的示例,所以可以直接传递引用,当然method方法的值也可能是其他方法得到的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询