关于java中父类和子类相关方法的变量调用问题

如题 关于继承中变量的调用不是很清楚 有没有哪位大爹能说一下以下程序的输出内容 感谢
public class parent{
public int a=1;
private int b=1;

public parent()
{a=1;
b=1;}

public parent(int c,int d)
{a=c;
b=d;}

public printa()
{System.out.print(a);}

public printb()
{System.out.print(b);}

public printa1()
{System.out.print(a);}

public printb1()
{System.out.print(b);}

public geta()
{return a;}

public getb()
{return b;}

public geta1()
{return a;}

public getb1()
{return b;}

public printa2()
{System.out.print(this.geta());}

public printb2()
{System.out.print(this.getb());}

public printa3()
{System.out.print(this.geta1());}

public printb3()
{System.out.print(this.getb1());}
}

public class on extends parent{

public son(int c,int d)
{Super.(c,d);}

public printa1()
{System.put.print(a);}

public printb1()
{System.out.print(b);}

public geta1()
{return a;}

public getb1()
{return b;}
}

注:parent中a和b初始值为1 a是public变量 b是private变量
方法printa1,printb1,geta1,getb1在son里被override
求以下代码的输出结果 print的直接写 return的值前面加一个return 出错就error 写每行后面就行
public static void main(String[] args){
parent p=new on(2,2);
p.printa();
p.printb();
p.geta();
p.getb();
p.geta1();
p.getb1();
p.printa1();
p.printb1();
p.printa2();
p.printb2();
p.printa3();
p.printb3();
on d=new on(2,2);
d.printa();
d.printb();
d.geta();
d.getb();
d.geta1();
d.getb1();
d.printa1();
d.printb1();
d.printa2();
d.printb2();
d.printa3();
d.printb3();
}

img