JAVA学习笔记二:类的继承、多态性

来源:互联网 发布:度盘下载器 丢失数据 编辑:程序博客网 时间:2024/05/18 17:43

一、类的继承

①类的继承的概念

    java类的继承可用下面的语句来表示

      class 父类                  //定义父类

       { }

      class 子类extends 父类    //用extends关键字实现类的继承

         { }

example:       

<span style="font-size:18px;">  </span><span style="font-family:Times New Roman;font-size:14px;">package projiect;class Study{String name;}class Hard extends Study{    String result;}public class test1 {public static void main(String[] args) {// TODO Auto-generated method stubHard s=new Hard();s.name="我";s.result="爱学习";System.out.println(s.name+s.result);}}</span>
结果:我爱学习

当然还有多层继承(父类A)——(父类B)——(父类C)——子类,可用写成如下:

      class A                  

        { }

      class B extends A     

         { }

              class C extends B 

        { }

super关键字的使用

example: 

<span style="font-family:Times New Roman;font-size:14px;">package projiect;class Person{String name;int age;public String talk(){return "我是:"+this.name+",今年:"+this.age+"岁";}}class Student extends Person{String school;public Student(String name,int age,String school){super.name=name;super.age=age;System.out.print(super.talk());this.school=school;}}public class test1 {public static void main(String[] args) {// TODO Auto-generated method stubStudent s=new Student("小明",23,"UCAS");System.out.println(",学校:"+s.school);}}</span>
结果:我是:小明,今年:23岁,学校:UCAS
如果要限制子类继承父类的话,在父类中,可以用private申请私有变量。

二、类的多态性

直接用一个范例介绍多态性

<span style="font-family:Times New Roman;font-size:14px;">package projiect;class Person{public void talk1(){System.out.print("我是小明");}public void talk2(){System.out.print(",老师让我滚出去!");}}class Student extends Person{public void talk3(){System.out.print("我是小明");}public void talk2(){System.out.print(",我让老师滚出去!");}}public class test1 {public static void main(String[] args) {// TODO Auto-generated method stubPerson p=new Person(); //优先用父类Person里面的函数p.talk1();p.talk2();}}</span><span style="font-family:KaiTi_GB2312;font-size:18px;"></span>
结果为:我是小明,老师让我滚出去!

如果把Person p=new Person();改为Person p=new Student();//这是优先利用子类Student中的函数。

结果为:我是小明,我让老师滚出去!

0 0