java方法重写问题

[复制链接]
查看11 | 回复0 | 2008-5-12 23:45:37 | 显示全部楼层 |阅读模式
class A{private int n;public A(){n=0; }public void display(){System.out.println("n?μ="+n); } } class B extends A{private int m;public B(int n){this.m=n; }public void display(){m=1;super.display(); }} public class test{public static void main(String[] arge){ B b=new B(10); b.display();} } 你的这个程序很多错误哦,你的public void A(){}不是构造方法哦,你是想用构造方法的吧,你用b.display(); 肯定是调用类B中的display()方法,在调用A类的display()啦,只是打印出:n值=0。因为你的类A中的属性n是private的,所以不被B所继承,你用this.n=n;是错误的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行