A. java中, 怎么调用别的类的私有方法
利用反射即可调用;
简易实例代码如下:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* @author thomaslwq
* @version 创建时间:Sep 4, 2012 9:53:49 PM
* 类说明
*/
public class ReflectionTest {
public static void setObjectColor(Object obj) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAcces***ception, InvocationTargetException{
Class cls = obj.getClass();
//获得类的私有方法
Method method = cls.getDeclaredMethod("privateMethod", null);
method.setAccessible(true); //没有设置就会报错
//调用该方法
method.invoke(obj, null);
}
public static void main(String args[]) throws SecurityException, IllegalArgumentException, NoSuchMethodException, IllegalAcces***ception, InvocationTargetException{
setObjectColor(new MyTest());
}
}
//测试类
class MyTest{
public void setMyTest(){
System.out.println("setMyTest");
}
/**
类的私有方法
**/
private void privateMethod(){
System.out.println("调用了 private Method");
}
}
B. java Main函数怎么调用其他函数。 其他类。
主函数main前必须有static修饰符,static表示是静态。
一般,在静态的方法中,若要|-直接-|调用其他方法,那么被调用的也必须是静态。
你的程序中包含两个部分
方法getInt() 和主函数main 其中主函数是静态(main必须是静态)。
那么要在main中直接调用getInt()是不可以了,因为getInt没有用static修饰,也就是说getInt不是静态。
将public void getInt() 修改成 public static void getInt() ,追加静态修饰符static后可直接调用。
主函数main修改为
public static void main(String[] args)
{
getInt(); //这里调用了上面的方法
System.out.println("总共有括号对数:");
}
返回值:
有些方法是带有返回值的,取决于你的用途。能不能带返回值取决于void修饰符
普通方法,无返回值void修饰 。如 public void fangfa()这是无返回值的
public int fangfa() 这个是有返回值的,而且返回值必须是int
举个例子
public int getPlayercounts()
{
int playercount = 0 ;//一般先初始化一个相应的变量待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相关的计算和方法开始..
playercount ++ ;
return playercount; //返回一个int值(重要,而且是必须)
}
当你的方法不是用void修饰 而是用其他数据类型修饰,均是要有返回值的,也就是说在方法的结束为止至少要有一个return + 相应的数据类型的变量 来结束。
那么返回值究竟有什么意义呢?
看下面这个例子、
public static int getPlayercounts() //注意我用了static 这是一个静态方法
{
int playercount = 0 ;//一般先初始化一个相应的变量待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相关的计算和方法开始..
playercount ++ ;
return playercount; //返回一个int值(重要,而且是必须)
}
public static voin main(String[] args)
{
System.out.println("一共有"+getPlayercounts()+"个玩家");
}
看出来了吧,getPlayercounts()执行后 会获得执行时得到的int数,在一些需要最后得到某个结果的方法中,用含有返回值的方法是非常方便的。
==============================================
你的代码完全修改后如下,因为你需要的是得到括号数,所以将你的原有方法改成一个返回int值得方法。
public class java
{
public static int getInt()// 原来是 public void getInt() ,修改后增加了static修饰, int替换了void
{
String strChar="a(bc)()()dnn()()j";
int iX=0;
int iY=0;
for(int p=0; p<strChar.length();p++)
{
String getstr=strChar.substring(p,p+1);
if(getstr.equals("(")){iX++;}
if(getstr.equals(")")){iY++;}
}
return Math.min(iY, iX);//取两者之间的最小值(即括号对数)作为返回值
}
public static void main(String[] args)
{
System.out.println("总共有括号对数:"+getInt());
}
}
郁闷 写了半天发现你已经认可了。。
C. java一个类怎么调用另外一个类的主方法
1、与一般调用没什么差别,直接new 出来另一个类的对象,调用方法即可。
B里面代码
publicclassB{
publicstaticvoidmain(Stringargs[]){
System.out.println("thisisB");
}
}
A里面代码
publicstaticvoidmain(Stringargs[])
{
Bb=newB();
b.main(args);
}
运行A效果:
D. java怎么调用另一个类的方法
java中如何调用类?本类中的直接方法名调用,不管是public还是private或protected。其他类中的如果是public的话,直接其他类的对象调用即可。如果是static的话直接其他类名加方法名调用。
如果另一个类中的那个方法是私有的话,就不能直接调用到,如果是其他类型的话看情况,如果是静态的(static)话,直接用类名可以调用到,如果是非静态的,就需要利用另一个类的实例(也就是用那个类生成的对象)来调用。
先在eclipse中创建一个Java工程文件。并在src下创建demo包,在demo包下创建类DemoClass。接下来在DemoClass类中添加一个静态属性和静态方法。被static修饰的属性或方法就是静态的。
如果一个类中只有一个名称为a的方法,那么我们可以直接调用即可,如下图所示以下是我们直接使用传统的方式直接调用这个类中的a方法。
Java中的一个类怎么调用另一个类中的方法
1、java类有两种方法一种是类方法就是用static修饰的,一种是实例方法,就是没有static修饰的方法。类方法可以同时类名.方法名的方式调用。而实例方法必须先生存类的实例在通过实例.方法名的方式调用。
2、如果有访问权限的话,可以调用该类的静态方法(不同包需要引用import);一般的方法只能引用该类的实例对象的方法。直接在此类的方法里调用另一个类或对象的方法。
3、先在eclipse中创建一个Java工程文件。并在src下创建demo包,在demo包下创建类DemoClass。接下来在DemoClass类中添加一个静态属性和静态方法。被static修饰的属性或方法就是静态的。
4、与一般调用没什么差别,直接new出来另一个类的对象,调用方法即可。
Java中的一个类怎么调用另一个类中的方法?1、java类有两种方法一种是类方法就是用static修饰的,一种是实例方法,就是没有static修饰的方法。类方法可以同时类名.方法名的方式调用。而实例方法必须先生存类的实例在通过实例.方法名的方式调用。
2、先在eclipse中创建一个Java工程文件。并在src下创建demo包,在demo包下创建类DemoClass。接下来在DemoClass类中添加一个静态属性和静态方法。被static修饰的属性或方法就是静态的。
3、如果一个类中只有一个名称为a的方法,那么我们可以直接调用即可,如下图所示以下是我们直接使用传统的方式直接调用这个类中的a方法。
4、如果有访问权限的话,可以调用该类的静态方法(不同包需要引用import);一般的方法只能引用该类的实例对象的方法。直接在此类的方法里调用另一个类或对象的方法。
在java中怎样使方法调用同一个类中的方法是什么?1、如果一个类中只有一个名称为a的方法,那么我们可以直接调用即可,如下图所示以下是我们直接使用传统的方式直接调用这个类中的a方法。
2、方法新建一个类。然后在调用类中先进行被调用类实例化,然后通过实例化的对象访问。
3、通过this的方式引用,this是当前类的引用,可以在类里面来引用这个类的属性和方法。
4、你main方法是静态方法,静态方法是不能调用非静态方法。因为静态方法是提前加载的。这个时候可能非静态方法根本就还没加载。所以,是部允许在静态方法里面调用非静态方法的。
E. Java中的一个类怎么调用另一个类中的方法
publicclass调用
{
publicstaticvoidmain(String[]args)
{
System.out.println("
==========Java中的一个类怎么调用另一个类中的方法!==========
");
init();
}//初始化!
privatestaticvoidinit()
{
//创建A类对象
Aa=newA();
a.show2();
a.show1();
System.out.println("
------------------------------分割线--------------------------
");
//创建B类对象
Bb=newB();
b.method1();
b.method2();
}
}
//A类!
classA
{
voidshow1()
{
System.out.println("这个是A类中的show1方法,调用B类的method1方法");
newB().method1();
}
voidshow2()
{
System.out.println("这个是A类中的show2方法!");
}
}
//B类!
classB
{
voidmethod1()
{
System.out.println("这个是B类中的method1方法!");
}
voidmethod2()
{
System.out.println("这个是B类中的method2方法!调用A类的show2方法");
newA().show2();
}
}
F. java中如何调用其他java文件
JAVA中方法的调用主要有以下几种:
1.非静态方法
非静态方法就是没有 static 修饰的方法,对于非静态方法的调用,是通过对 象来调用的;
2.调用静态方法
静态方法就是用 static 修饰的方法,静态方法的调用是通过类名来调用的;
3.方法与方法之间的调用
方法与方法之间的调用,主要是在一个方法内部如何调用其他方法。
(1)静态方法内部调用其他方法
如果在本类当中,静态方法可以直接调用静态方法,