首页 > 编程语言 > 详细

浅析java--继承

时间:2017-10-29 15:49:26      阅读:223      评论:0      收藏:0      [点我收藏+]

1、为什么要使用继承

  减少代码的冗余,实现代码的复用。下面举例说明:

java老师类:

public class  DotNetTeacher {
private String name; // 老师姓名
private String school; // 所在学院
public  DotNetTeacher(String myName, String mySchool) {
name = myName;
school = mySchool;
}
public void giveLession(){
System.out.println("启动 Visual Studio 2005");
System.out.println("知识点讲解");
System.out.println("总结提问");
}
         public void introduction() {
    System.out.println("大家好!我是"           + school + "的" + name + ".");
         }
}
.net老师类:

public class  JavaTeacher {
private String name; // 老师姓名
private String school; // 所在学院
public  JavaTeacher(String myName, String mySchool) {
name = myName;
school = mySchool;
}
public void giveLession(){
System.out.println("启动 Eclipse");
System.out.println("知识点讲解");
System.out.println("总结提问");
}
public void introduction() {
    System.out.println("大家好!我是"           + school + "的" + name + ".");
          }
}
  从以上两段代码可以看出有很多代码都是重复,那我们可不可以想到一个方法实现代码共享呢?那就是今天所讲的继承。

2、继承的含义

含义:继承就是把对象的一个公共属性和方法把他提取出来,把他们放到一个类里面,我们把这个类称为父类。

从以上提出可得:

public class  Teacher {
private String name;   // 老师姓名
private String school; // 所在学院
public  Teacher(String myName,String mySchool) {
name = myName;
school = mySchool;
}
public void giveLesson(){
System.out.println("知识点讲解");
System.out.println("总结提问");
}
       public void introduction() {
    System.out.println("大家好!我是“
                 + school + "的" + name + "。");
       }
}
那我们如何访问这些属性和方法呢?这里我们就要用到继承了。

3、继承的实现

其语法格式如下:

public class  JavaTeacher  extends   Teacher {       //extends是关键字,JavaTeacher 为子类,Teacher为父类
//其余代码省略
}
java老师类实现:

public class  JavaTeacher extends  Teacher {
public void giveLesson(){
System.out.println("启动Eclipse");
super.giveLesson();
}
}

补充知识:

代码重写:当父类的方法不能充分满足子类的需求,需要对父类分方法进行重写。这里的java老师类就对老师类的public void giveLesson(){}进行了重新。

注意:子类和父类的方法具有相同的名称、参数列表、返回类型 。只是方法体不同。

4、具体使用过程:

public class test{

public static void main(String[] args) {

JavaTeacher java=new JavaTeacher("张三",“计算机学院”);

System.out.println(java.introduction());

}

}

 

输出:大家好!我是计算机学院的张三。

由此看出:

java老师类中并没有实现introduction(),而是调用了老师的introduction()方法。

 

只是浅显理解,还请指教。

 

浅析java--继承

原文:http://www.cnblogs.com/jennefer/p/7750107.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!