我有一个类,其变量类型为Name
。
public class Holder {
private Name name;
private int snumber;
Name
类具有两个名为first
和last
的字符串,这些字符串由setter方法分配值。我想将Name
类中的字符串发送到Holder
类中的名称,但是这样做很麻烦。我认为我已经朝着正确的方向迈出了一步
public class Holder {
private Name name;
private int snumber;
public void setName(){
name = new Name();
name.getFirst();
name.getLast();
}
但是我不能说我真的知道正确的方法是什么。我也尝试过name.setFirst(getFirst)
,但这不起作用。任何想法将不胜感激。
答案 0 :(得分:1)
与不嵌套类的方式相同。
您的setName()方法应带有一个参数(可能是2,第一个和最后一个),然后调用name.setFirstName(),name.setLastName()方法。
现在,您的setName()方法没有执行任何操作。
E.G:
public class Holder
{
private Name name;
private int snumber;
public Holder()
{
this.name = new Name();
}
public void setName(String firstName, String lastName)
{
this.name.setFirst(firstName);
this.name.setLAst(lastName);
}
}
答案 1 :(得分:0)
这是一篇很好的文章,解释了Java内部和外部类之间的关系:
https://www.tutorialspoint.com/java/java_innerclasses.htm
class Outer_Demo {
// private variable of the outer class
private int num = 175;
// inner class
public class Inner_Demo {
public int getNum() {
System.out.println("This is the getnum method of the inner class");
return num;
}
}
}
public class My_class2 {
public static void main(String args[]) {
// Instantiating the outer class
Outer_Demo outer = new Outer_Demo();
// Instantiating the inner class
Outer_Demo.Inner_Demo inner = outer.new Inner_Demo();
System.out.println(inner.getNum());
}
}
请注意,该示例同时创建了“ Outer_Demo”和“ Inner_Demo(outer.new Inner_Demo();
)的实例。
答案 2 :(得分:0)
好,所以我想出了一些可行的方法。
public class Holder {
private int snumber;
private Name name;
public void setName(Name n){
name=n;
}
public Name getName(){
return name;
}