求详解,运行不出结果
public class Base
{
private int a;
public Base(int a)
{
this.a=a;
}
public int getA()
{
return a;
}
public class Sub extends Base
{
private int b;
public Base(int a,int b)
{
super(a);
this.b=b;
}
public int getB()
{
return b;
}
}
public void main(String[] args)
{
Sub sub=new Sub(1,2);
System.out.println("a="+sub.getA()+"b="+sub.getB());
}
}
这个有什么不理解的吗? 正常的类不都是这样定义的吗?你有什么想法?
[解决办法]
[解决办法]
main函数是程序的入口 我要是将sub放在base外部的话,我就直接可以用sub了,可是如果我将sub放在base内部的话我就需要通过base访问到sub
[解决办法]
public class Base {
private int a;
public Base(int a) {
this.a = a;
}
public int getA() {
return a;
}
class Sub extends Base {
private int b;
public Sub(int a, int b) {
super(a);
this.b = b;
}
public int getB() {
return b;
}
}
public static void main(String[] args) {
Base b = new Base(1);
Base.Sub sub = b.new Sub(3, 2);
System.out.println("a=" + sub.getA() + "b=" + sub.getB());
}
}
这是把sub放在里面的注意一下主函数 你就会发现发在里面与放在外面的区别


姐姐我只有QQ可是基本上不上线