java对象调用
Ⅰ 在java中一个对象调用某个方法需要满足哪些条件
如果是调用自己的成员函数,没什么条件。
如果调用的别的类中的成员函数,如果是该函数是非静态,需要先生成该类的对象再调用。
Ⅱ java如何调用一个方法内的对象
public int maybeNew(int index) {
if(index < 1) {
Mix4 m4 = new Mix4();
m4.counter = m4.counter + 1;
return 1
//System.out.println("m4.counter = " + m4.counter);
}
return 0;
}因为你是在这个方法里定义的m4,这里的m4为一个局部变量,意思是m4只在maybeNew这个方法的 if(index < 1) {}内才有效,其它地方用不到的,及时是在同一个方法的if外面都引用不到,这是java为局部变量定义的规则,没有为什么,这是必须得。
Ⅲ java对象调用问题
首先你要看一下你运行时或者编译时给你的错误信息,根据这个看自己的代码出现的问题;下面是我的代码,没有问题可以正常输出。
packagestring;
importstaticorg.junit.Assert.*;
importorg.junit.Test;
publicclassFxTest{
@Test
publicvoidtest(){
int[]arr1={2,3,5,9,6,6,9,9,56,65};
Fxfx=newFx(arr1);
fx.printArray(arr1);
}
}
packagestring;
publicclassFx{
privateint[]arr;
publicFx(int[]arr){
this.arr=arr;
}
voidprintArray(int[]arr){
for(inti=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
}
Ⅳ java对象数组如何调用
mian是程序的入口,如果你想在mian里面初始化,之后在其他的方法里面调用,要么把这个数组声明成static的,要么在之后的方法里面通过参数将数组对象传递。
Ⅳ 关于java中对象调用方法
内存里a和b指向的不是同一个对象,不是同一块内存。代码hh a=new hh();是表示在栈内存里分配一块区域给a,同时在堆内存里创建一个hh类的对象,然后让a指向这个对象。代码hh b=new hh();是表示在栈内存里分配一块区域给b,同时在堆内存里创建一个hh类的对象,然后让b指向这个对象。看你的hh里没有重写toString(),直接打印a和b应该是调用Object里面的toString(),打印出来的是类名和此对象的十六位哈希码,应该是不同的。然后我把你的代码自己运行了一下,打印出来的哈希码也是不一样的,不论是直接打印a和b由toString()方法默认返回的,还是调用两个对象中的hashCode()方法出来哈希码都是不相同的。a.equals(b)返回的是false说明a和b不相等,我查了一下API,根据API里面写的hashCode 的常规协定是:在 Java 应用程序执行期间,在对同一对象多次调用 hashCode 方法时,必须一致地返回相同的整数,前提是将对象进行 equals 比较时所用的信息没有被修改。从某一应用程序的一次执行到同一应用程序的另一次执行,该整数无需保持一致。如果根据 equals(Object) 方法,两个对象是相等的,那么对这两个对象中的每个对象调用 hashCode 方法都必须生成相同的整数结果。如果根据 equals(java.lang.Object) 方法,两个对象不相等,那么对这两个对象中的任一对象上调用hashCode 方法不 要求一定生成不同的整数结果。但是,程序员应该意识到,为不相等的对象生成不同整数结果可以提高哈希表的性能。说明相同的对象,哈希码必须相同。不同的对象,哈希码不一定不同。我查了下资料,哈希码的生成函数不能保证不同对象生成的哈希码一定相同,有很小很小的几率会相同,不会被你装上了吧?还是其他class的干扰呢?你把重新建一个文件夹,把java文件复制进去,然后编译运行看下还是不是一样。我也是刚学java的,工作比较无聊我就学了下java,刚学了1个半月吧。能力有限,我把我懂得都写出来,希望能帮到楼主。
请采纳答案,支持我一下。
Ⅵ java创建对象需要调用什么方法
对于一般的无参构造器,创建对象需要new,例如:Person p = new Person();
如果有带参数的构造器,创建对象时不仅需要new,还需要传入对应的参数
例如:Person p = new Person("id","name");
Ⅶ java对象是如何调用方法的(从内存方面解释)
首先在内存中生成对象dog,然后根据dog的eat方法签名找到方法区的eat方法。这个没有类型转换,相对来说比较简单,如果有类型转换的话,那么会出现动态绑定,会复杂一些的,关于内存方面的内容可以查看strutshome网站。
Ⅷ java关于对象和调用方法
考的应该就是重载、覆盖方法后调用的哪一个方法。像Beta类,它继承Alpha类并重载essai方法,那么Beta类就有两个essai方法:essai(Alpha)和essai(Beta)。b.essai(b)调用的是essai(Beta),因为b申明的是Beta类型,打印的是"beta"。b.essai(c)应用的是调用的是essai(Alpha),因为c申明的是Alpha类型,打印的是"alpha"。
而Gamma类,它继承Beta类,但它覆盖了Alpha类的essai(Alpha)方法。那第它也就两个essai方法:essai(Alpha)和essai(Beta)。但由于它覆盖了essai(Alpha)方法,所以essai(Alpha)方法打印的不再是"alpha",而是"gamma"。d.essai(d)调用的是essai(Beta),打印的仍然是"beta"。e.essai(d)调用的是Gamma类的essai(Alpha)(而且只能调用essai(Alpha),因为e申明的是Alpha类型,Alpha类只有一个essai方法。 又因为d的类型是Alpha的子类,所以可以传进去),因为它new的是Gamma类对象而不是Alpha类对象,而Gamma类的essai(Alpha)方法覆盖了Alpha类的essai(Alpha)方法,所以打印的是"gamma"而不是"alpha"。同样的d.essai(e)调用的也是Gamma类的essai(Alpha)方法,打印的是"gamma"。
呼,说得有点绕了...
Ⅸ java里对象调用函数是什么意思,对象怎么调用它。对象掉用函数之后,对象会和调用之前出现什么不同
对象调用函数可以说这个对象引用这个方法(函数),方法就是对对象进行一定的处理然后可能返回一定的数据,对象一般可以通过。来调用eg:obe.go();
对象之后变成什么样,要看函数对他进行了什么处理
Ⅹ Java怎么调用对象的方法呀
一般来说要加包名
在第二个类里要import第一个类