笔记12 子类和父类

子类

在类的声明中,使用关键字extends来定义一个类的子类,格式如下:

class 子类名 extends 父类名 {
...... 
}

类的树形结构

Java的类按照继承关系形成树形结构(将类看作树上的结点),在这个树形结构中,根结点是Object类,即Object是所有类的祖先类,任何类都是Object类的子类。每个类(除了Object类)有且仅有一个父类,一个类可以有多个或零个子类。如果一个类(除了Object类)的声明中没有使用extends关键字,这个类被系统默认为是Object类的子类。

子类和父类在同一个包中的继承性

如果子类和父类在同一个包中,那么,子类自然地继承其父类中不是private的成员变量作为自己的成员变量,并且也自然继承了父类中不是private的方法作为自己的方法,继承的成员变量或方法的权限保持不变。

子类和父类不在同一个包的继承性

当 子类和父类不在同一个包中时,父类中的private和友好访问权限的成员变量不会被子类继承,也就是说,子类只继承父类中protected和public访问权限的成员变量作为子类的成员变量;同样,子类只继承父类中protected和public访问权限的方法作为子类的方法。

public class People {
      int age ,leg = 2,hand  = 2;
      protected void showPeopleMess(){
            System.out.println("%d岁,%d只脚,%d只手\t",number);
            }
        }

 public class student extends People {
       int number ;
       void tellNumber () {
        System.out.println("学号:%d\t",number);
        }
        int add (int x,int y) {
        return x+y;
        }
    }

public class UniverStudent extends Student {
         int multi (int x,int y) {
         return x*y;
         }
   }
public class Example{
       public staitc void main (String args[]){
              Student zhang = new Student();
              zahng.age = 17;
              zhang.number = 100101;
              zhang.showPeopleMess();
              zhang.tellNumber();
              int x =9,int y = 29;
               System.out.println("会做加法:");
               int result = zhang.add(x,y);
                System.out.printf("%d+%d=%d\n",x,y,result); 
                 UniverStudent geng = new UniverStudent ();
                 geng.age = 21 ;
                 geng.number = 6609;
                 geng.showPeopleMess();
                 geng.tellNumber();
                 System.out.println("会做加法:");
                 result = geng.add(x,y);
                 System.out.printf("%d+%d=%d\n",x,y,result);
                    System.out.println("会做乘法:");
                 result = geng.multi(x,y);
                    System.out.printf("%dx%d=%d\n",x,y,result);
                    }
          }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值