java(子类的继承及对象的构造过程)

 

class Father{
 private int moneyDollar=300;
 int moneyHK=200;
 int add(int x,int y){
  return x+y;
 }
}
class Son extends Father{
 int moneyRMB=800;
 public void changMoneyHK(int x){
  moneyHK=x;
 }
 public void changMoneyRMB(int x){
  moneyRMB=x;
 }
 int subs(int x,int y){
  return x-y;
 }
}
class GrandSon extends Son{
 int multi(int x,int y){
  return x*y;
 }
}
public class Example5_1{
 public static void main(String args[]){
  int a=5,b=3;
  Son son=new Son();
  GrandSon sunzi=new GrandSon();
  son.changMoneyHK(666);
  son.changMoneyRMB(5000);
  System.out.println("儿子的港币是继承的属性,当前的值是:"+son.moneyHK);
  System.out.println("儿子的人民币是新增的属性,当前的值是:"+son.moneyRMB);
  System.out.printf("减法是儿子新增的功能,%d-%d等于%d\n",a,b,son.subs(a,b));
  System.out.printf("加法是儿子新增的功能,%d+%d等于%d\n",a,b,son.add(a,b));
  System.out.println("孙子的港币和人民币都是继承的属性,当前的值是:");
  System.out.println("港币:"+sunzi.moneyHK+"人民币:"+sunzi.moneyRMB);
  System.out.printf("乘法是孙子新增的功能,%d*%d等于%d\n",a,b,sunzi.multi(a,b));
  System.out.printf("加法是孙子继承的功能,%d+%d等于%d\n",a,b,sunzi.add(a,b));
  System.out.printf("减法是孙子继承的功能,%d-%d等于%d\n",a,b,sunzi.subs(a,b));
 }
}

 

class A{
 private int x=10;
 protected int y=20;
 void f(){
  y=y+x;
  System.out.printf("x=%d,y=%d\n",x,y);
 }
}
class B extends A{
 void g(){
  y=y+1;
  System.out.printf("y=%d\n",y);
 }
}
public class Example5_2{
 public static void main(String args[]){
  B b=new B();
  b.g();
  b.f();
  b.g();
 }
}

posted @ 2013-04-12 20:21  徐慧同学  阅读(333)  评论(0编辑  收藏  举报