您的位置:首页 > 编程语言 > Java开发

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

2014-11-12 19:12 351 查看
一、类的继承

①类的继承的概念

   
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 stub
Hard 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 

[b] 
      
{ }
[/b]
②super关键字的使用
[b]example: 
[/b]

<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 stub
Student 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 stub
Person 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中的函数。

结果为:我是小明,我让老师滚出去!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java class 多态 继承