Java如何在一个类中引用另一个类的成员变量和方法

不希望使用内部类来做,有听老师说过用构造函数的方法,不过还是不太清楚,希望举例解释下~

第1个回答  推荐于2017-10-11
public class Student(){
String id;
String name;

public Student(){}
public Student(String id,String name){
this.id = id;
this.name = name;
}
}
====
public class Test(){
String ids;
String names;

public static void main(String[] args){
Test test = new Test();
Student stu = new Student("001","jack");
test.ids = stu.id;
test.nams = stu.name;
System.out.println("ID=" + this.ids + " Name=" + this.names);
}
}本回答被提问者采纳
第2个回答  2009-10-06
利用反射机制访问类的成员变量

//获得指定变量的值
public static Object getValue(Object instance, String fieldName)
throws IllegalAccessException, NoSuchFieldException {

Field field = getField(instance.getClass(), fieldName);
// 参数值为true,禁用访问控制检查
field.setAccessible(true);
return field.get(instance);
}

//该方法实现根据变量名获得该变量的值
public static Field getField(Class thisClass, String fieldName)
throws NoSuchFieldException {

if (thisClass == null) {
throw new NoSuchFieldException("Error field !");
}
}

这种访问方式能够访问到私有成员变量!
第3个回答  2009-10-06
将被引用类实例化,通过实例引用,或者将要引用的类成员定义为static成员
第4个回答  2009-10-06
把那个类的成员变量和方法设为public或静态

Java如何在一个类中引用另一个类的成员变量和方法
public class Student(){ String id;String name;public Student(){} public Student(String id,String name){ this.id = id;this.name = name;} } === public class Test(){ String ids;String names;public static void main(String[] args){ Test test = new Test();Student stu = ne...

java之中要如何在一个class中调用另一个class里面的变量?
如果第二个类继承于第一个类,第二个类就继承了第一个类的非私有成员,那么第一个类的非私有成员变量可以调用。如果这两个类没有任何关系,第二个类想调用第一个类中的变量,可以在第二个类的新建一个对象,用类名加点的方式访问,当然该变量要是非私有的。

一个类怎样引用另外一个类的成员变量或方法
方法一:变量C是非静态的(static),那么在B类中创建一个A类的对象,用对象.变量名就可以了 方法二:变量C是静态的(static),直接用类.变量名

Java中一个类如何访问另一个类中的成员变量问题
如果成员变量是静态的,那么直接在A类中通过“B.变量名称”的形式即可。如果成员变量是动态的,需要在B类中创建变量的set和get方法,之后在A类中:B b =new B();进行B类实例化 b.setName("zhangsan");\/\/赋值 b.getName();获取到成员变量值。

JAVA一个包里建立好两个类,一个类如何调用另一类的里的数据?
1、先在eclipse中创建一个Java工程文件。并在src下创建demo包,在demo包下创建类DemoClass。2、接下来在DemoClass类中添加一个静态属性和静态方法。被static修饰的属性或方法就是静态的。3、对于静态方法的调用,可以使用调用非静态方法的方式去调用,即创建一个类的对象,然后再调用静态方法。4、编辑好...

如何在Java的一个Class里调用另一个Class里的变量的值?
int var;} A 中调用 var 如果var对于不同的B对象值是不同的。Class A { public void visit () { B ob; ob.getVar (); } } Class B { private int var;public int getVar () { return var; } } 如果该变量对于所有的B对象都是一样的。Class A { public void visit () { B....

java 中 类调用另一个类的成员变量 怎么弄
你应该这么写定义一个Person类 class Person{ private int age;void shout(){ System.out.println("my age is "+age);} public void setage(int x){ age=x;} public int getage(){ return age;} } 使用这个Person类 class TestPerson{ public static void main(String [] args){ Person ...

java中如何跨类调用参数
java中调用其他类的变量有以下几个步骤:方法1:new 一个其他类的对象出来,调用该类的公共变量(public)方法2:把其他类的变量设置为public static,即静态公共变量,直接用类名.变量名获取。但是这个方法最好只用于基础数据变量(int\/long\/boolean\/double\/byte等),否则会造成内存泄漏。方法3:用方法...

关于java编程的问题:一个类调用另一个类中构造方法中所定义的参数。
静态构造函数不允许携带参数,即一个类中只允许有一个静态构造函数。它在第一次访问静态成员或者第一次实例化动态该类的对象之前调用。关于Java中构造方法的问题 可以,一般都用,单例用private java中一个类想调用另一个类中定义的面板怎么调用 将主面板传递给一个类,在这个类中将主面板上的将你想要...

在java多态中,为什么调用子父类中的同名变量及函数时,变量调用的是父类...
Fu f= new Zi()首先你要知道“Fu f”是放在栈中,而“new Zi()”是放在堆中;编译的时候,是在的栈中f,就是Fu对象,父类变量;而实际运行的时候,f会指向堆中的“new Zi()”,就是子类对象,自然运行子类的函数

相似回答