已知有两个Class 都继承了一个相同C
Class A extends C{
public A(float x, float y){...}
private int x;
public void getX{....}
}
Class B extends C{
public B(float x, float y){...}
//-------------
}
现在想在B 的 //----- 这一行表达出 调用 A 里的 x, 类似 A a.getX()
该怎么执行呢
这里就用到了对象的一对一关系,你可以将对方的类作为自己类的一个属性,写在自己的属性里面,给你代码,你看看就知道
package homework4;
/**对象与对象之间的一对一关系
* 简要的说就是讲一个类作为另一个类的一个属性(注意,在这里作为属性时,不能是私有的,)
*/
public class onetoone {
public static void main(String[] args) {
// TODO Auto-generated method stub
Husband h=new Husband();
Wife w=new Wife();
h.setName("花花");
h.setSex('男');
w.setName("小红");
w.setAge(23);
h.wife=w;//将妻子类中的属性值赋予h.wife
w.husband=h;//将丈夫类中的属性赋予w.husband
System.out.println("我是"+h.getName()+",我的妻子是"+h.wife.getName()+",她今年"+h.wife.getAge()+"岁了。");
}
}
//丈夫类
class Husband{
private char sex;
private String name;
public Wife wife;
public void setSex(char sex){
this.sex=sex;
}
public int getSex(){
return sex;
}
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public Husband(){ }
//public husband(char sex,String name){
//this.name=name;
//this.sex=sex;
//}
}
//妻子类
class Wife{
private int age;
private String name;
public Husband husband;
public void setAge(int age){
this.age=age;
}
public int getAge(){
return age;
}
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public Wife(){}
//public wife(int age,String name){
//this.age=age;
//this.name=name;
//}
}
输出结果:
现在x里面的值是不停的会变得, 而且A里面有构造 new感觉在B里用不了, 难道没有办法获得A的值吗
本回答被网友采纳java之中要如何在一个class中调用另一个class里面的变量?
如果第二个类继承于第一个类,第二个类就继承了第一个类的非私有成员,那么第一个类的非私有成员变量可以调用。如果这两个类没有任何关系,第二个类想调用第一个类中的变量,可以在第二个类的新建一个对象,用类名加点的方式访问,当然该变量要是非私有的。
如何在Java的一个Class里调用另一个Class里的变量的值?
Class B { 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 ...
java怎么在一个类里面调用另一个类中的变量?
1.你需要调用的另一个类的变量.必须是全局变量.\\x0d\\x0a 2.User user = new User();\\x0d\\x0a 3.定义为public.通过user.name就可以拿到user类里面的name变量\\x0d\\x0a 4.定义为private 那么就必须在user类里面添加name变量的set,get方法,通过user.getName()方法拿到user里面的name变量\\x...
java中怎样在一个类中访问同一个包中的另一个类定义的变量?
A类想调用B类中的变量c:给A一个属性,属性类型是B,然后再对B进行封装,用A对象调用B封装后的方法,然后就可以访问c了代码:public class B {private int c;public int getC() {return c;}public void setC(int c) {this.c = c;}}public class A {private B b;public B getB() {re...
在JAVA中,如何在一个方法中调用另一个方法中的变量?
一个方法中的参数是局部变量,只能在本方法内部使用。如果非要在别的方法中使用,可以将你在方法1中输入的整数作为方法1的返回值,在方法2中调用方法1,间接调用输入的整数。public int method1(){ Scanner scan = new Scanner(System.in);int n = scan.nextInt();return n;} public void meth...
java中一个类想调用另一个类的变量,必须到方法里面吗,直接在类里面能不...
java 不能在类中初始化引用,所以不能直接在类中new一个对象出来,要使用其他类的变量,必须在自己的类的方法中先创建被引用类的实例,通过实例来引用该类的变量,但是,如果被引用的类的变量是静态的,则可以通过如下指令引用:类名.变量 来直接引用这个变量。
Java如何在一个类中引用另一个类的成员变量和方法
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);} } ...
java中一个类想调用另一个类的变量该怎么办?
如果另一个类的变量是静态变量,用 类名.变量名 调用 如果是public的变量,先创建另一个类的对象,用 对象名.变量名 调用 如果是private的变量,用set、get方法操作对象 还可以利用反射机制操作变量
java函数调用(在一个类中怎么调用另一个类的变量和函数)
public class Student {\/\/ 带有主函数的类,Score类在下面 String name;Score score = new Score();\/\/ 此句有重大嫌疑 nested class object as an attribute, no mistake here!public String introduce() { return (name + "\\t" + score.java + "\\t" + score.db + "\\t" + score.c +...
java怎样从一个包中调用另外一个包中的变量
这个很简单 把要调用的变量设为public变量,在要调用的包里面实例化那个变量所在的类,然后通过点语法调用这个变量。不明白可以追问,望采纳!