`
茶杯里的台风
  • 浏览: 12448 次
  • 性别: Icon_minigender_2
文章分类
社区版块
存档分类
最新评论

类的继承

 
阅读更多

20130629    类的继承

         今天主要讲了类的继承。

1.类的继承

     1.1关键字      extends

     1.2格式          public class 类名(子类/超类/派生类) extends 类名(父类/基类) {
   
                           }

     1.3访问修饰符:public、protected、private、默认的(空)

          子类继承父类的属性和方法有:子类继承了父类的所有的属性和方法(public、protected、private、默认的)


     1.4对于子类,其属性和方法没有显示出来,不代表没有继承;所有都继承,不代表都可以调用。
    

     1.5子类和父类在同一个包下,能调用的方法和属性有:只有私有的属性不能在子类和子类的对象中调用
          不同包时,子类中:共有的、受保护的属性和方法及子类的对象中:公有的属性和方法
2 .方法重写 

2.1方法重写条件:
    2.1.1必需存在继承关系
    2.1.2返回值数据类型、方法名、参数个数、参数类型、参数顺序必须要和父类的完全一致
    2.1.3类重写方法的访问修饰符可以大于或等于父类方法的访问修饰符

2.2怎样调用重写的方法:
     优先调用子类中的方法,若子类中没有,则调用父类中方法

2.3重载和重写的区别:
     重写一定要有继承关系

    重写:原本在父类中某方法是存在的,只是要对其进行重新定义。

3.自动转型
3.1必须要存在继承关系
3.2格式:
            父类名 对象名=new 子类构造方法();
            Student stu=new UNStudent();

      格式二;:
            public 返回值数据类型 方法名(父类名 对象名){
           对象名.调用父类中定义过的方法
                        }
3.3自动转型引起编译错误的原因:
3.3.1编译机制的问题

3.3.2java在编译的时候,只会根据对象名的类型进行编译。
       会将你调用的方法,拿到父类中进行一一比较,如果发现没有在父类中定义的方法,则直接抛出编译错误,部分方法不能执行

       运行,还是会优先执行子类的方法,如果子类没有,才会执行父类的。
4.多态:
是由方法重载、继承、方法重写、自动转型等技术的组合
举例:大学英语老师要教大学生、高中生、初中生、小学生、幼儿园学生、其他类型学

0
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics