首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java继承

java继承

作者头像
taoli
发布2022-09-30 09:55:36
7430
发布2022-09-30 09:55:36
举报
文章被收录于专栏:桃李博客桃李博客

前言

继承是面向对象的三大特征之一. 也是实现软件复用的重要手段. Java继承具有单继承的特点, 每个子类只有一个直接父类.


继承的概念

继承是java面向对象编程技术的基础。

继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

例子:

兔子和羊属于食草动物类,狮子和豹属于食肉动物类。

食草动物和食肉动物又是属于动物类。

所以继承需要符合的关系是:is-a,父类更通用,子类更具体。

虽然食草动物和食肉动物都是属于动物,但是两者的属性和行为上有差别,所以子类会具有父类的一般特性也会具有自身的特性。

类的继承格式

在 Java 中通过 extends 关键字可以申明一个类是从另外一个类继承而来的,一般形式如下:

类的继承格式

class 父类 {
 } 
class 子类 extends 父类 { 
}

为什么需要继承

接下来我们通过实例来说明这个需求。

  • 人:属性(姓名,性别),方法(吃,睡,自我介绍)
  • 狗:属性(姓名),方法(吃,跑,跳)

实例:

class Teacher{
	
	String name;
	
	int age;
	
	String type;
	
	public void sleep(){
		System.out.println(name+"在睡觉");
	}
}
class JavaTeacher extends Teacher{
	public void teachJava(){
		System.out.println(name+"在教java");
	}
}
class PHPTeacher extends Teacher{
	
	public void teachPHP(){
		System.out.println(name+"在教PHP");
	}
}
public class TestTeacher1{
	
	public static void main(String[] args){
		JavaTeacher jt = new JavaTeacher();
		jt.name = "桃李";
		jt.age = 18;
		jt.type = "java";
		jt.teachJava();
		jt.sleep();
		
		
		PHPTeacher pt = new PHPTeacher();
		pt.name = "龙哥";
		pt.age = 18;
		pt.type = "php";
		pt.teachPHP();
		pt.sleep();
	}
}

类的继承的特点

  1. 如果父类中包含了某些类中的共同的属性和行为,我们可以使用继承来设计程序。
  2. 子类会把父类所有的属性和方法继承下来(暂时不考虑final)
  3. 子类使用extends关键字继承父类的共同属性以外,子类还可以有自己特有的属性或者方法。
  4. 父类更通用,子类更具体。
  5. 子类只能获得父类中的非private的属性,如果想要继承就得提供公共的set和get的方法。 私有的方法 是无法继承下来的
  6. java中只能做单继承
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 继承的概念
    • 类的继承格式
    • 类的继承格式
      • 为什么需要继承
      • 实例:
      • 类的继承的特点
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档