无论前方有什么困难,我们都要保持一颗向上的心,不认命,不信命,就像图片上面的玫瑰一样,迎着暴雨而上,加油,奋斗的你!

引言:我们之前学过面向对象编程的一个重要特点,数据的封装性;本章讲的是面向对象编程的另一个特点——继承。

壹、继承

1、子类与父类

(1)继承的定义:继承是一种由已有的类创建新类的机制。

(2)Java规定,继承下来的新类叫做子类,被继承的类叫做父类(超类);这里注意子类只有一个父类,这与c++不同,需要大家关注一下。

(3)继承的格式

class 子类名 extends 父类名{.........}

(4)注意点:

第一个就是(2)中知识点;第二个是,如果这里省略了extends,那么这里就默认了继承Object类,Object是Java.lang中类。

2、子类的继承性

(1)继承:就是子类可以继承父类的公有或者保护属性的变量或方法,换句话话说,从父类继承下来的,那就是你的,可以直接拿过来用。并且你还可以重写。我会在下面的代码里面为你们具体说明。

2.1   子类与父类由两种情况

(1)子类与父类在同一个包中 ,就是在如下图所示的src包里面。

这种情况,也就很自然地子类继承了父类的不是private的成员变量作为自己的成员变量,也自然地继承了父类中不是private的方法作为自己的方法。继承下来的变量和方法所拥有的访问权限不变。

这里需要注意,子类继承下来的变量与方法可以方法权限,但不可以变小,例如,父类中的protected权限可以在子类中放大为public权限。

(2)代码操作(代码一定要自己敲一遍,否则是没有效果的)

父类:

//初学者这里注意一下,一个Java
代码里面只能由一个public类,也就是主类
public class Xues {
//定义两个公有变量public String name="sz";public int age=21;
//定义一个无参构造方法,便于后面get()方法的操作,具体的我会在下一章讲解public Xues() {}
//定义带参函数public Xues(String name,int age){this.name=name;this.age=age;System.out.println("F2");}public int getAge() {return age;}public String getName() {return name;}public  void say( ){System.out.println("姓名:"+name+",年龄:"+age);}
}

子类:

public class Xuesson extends Xues{//定义子类所有的变量public int score=100;public Xuesson(){}public Xuesson(String name,int age,int score){this(name,age);//直接访问父类构造参数this.score=score;}
//定义super()方法,便于上面this指针对于父类的访问,方便操作public Xuesson(String name, int age) {super();}public int getScore() {return score;}
//重写,这里say()方法,如果去掉的话,那么下面的b.say()就是访问父类的,这就体现了继承性public  void say(){System.out.println("姓名:"+name+",年龄:"+age+",分数:"+score);}public static void main(String[] args) {Xuesson b=new Xuesson();b.say();}
}

(2)子类与父类不在同一个包中

如果子类与弗雷不在一个包里,则子类继承了父类的protected、public的方法与成员变量,继承的成员与方法的访问权限依然不变,但子类不难继承父类的友好变量与友好方法。

以上内容若有不理解的内容,可以私信我,我看到的话一定会回复,一定要保持学习,相信你的坚持终将美好!

Java:三大特性之继承性相关推荐

  1. Java三大特性之继承性的习题

    [练习题]1.继承: 定义一个名为Vehicles(交通工具)的基类(父类),该类中应包含String类型的成员属性brand(商标)和color(颜色),还应包含成员方法run(行驶,在控制台显示& ...

  2. java三大特性:封装、继承、多态

    2019独角兽企业重金招聘Python工程师标准>>> 至今记得若干年前,去面试排了半天的队,到我的时候,面试官问我的第一个问题,java三大特性是什么~我支支吾吾的没有答全~0.0 ...

  3. Java继承_Hachi君浅聊Java三大特性之 封装 继承 多态

    Hello,大家好~我是你们的Hachi君,一个来自某学院的资深java小白.最近利用暑假的时间,修得满腔java语言学习心得.今天小宇宙终于要爆发了,决定在知乎上来一场根本停不下来的Hachi君个人 ...

  4. java三大特性 继承_java基础(二)-----java的三大特性之继承

    在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句 ...

  5. Java提高篇 —— Java三大特性之继承

    一.前言 在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事 ...

  6. java 三大特性理解_java 三大特性--封装、继承和多态理解

    java 三大特性--封装.继承和多态理解 封装 /** * 所谓封装,就是将对象具有的成员变量和成员函数包装和隐藏起来,让外界无法直接使用, * 被封装的成员只能通过某些特定的方式才能访问. * 实 ...

  7. java三大特性、五大原则

    java三大特性 1.封装 隐藏类的属性和功能实现,增强类的安全性和简化编程,通过提供公用接口,以特定的访问权限来使用类成员. 2.继承 对共有的特性和行为进行抽取,形成父类,继承就是子类继承父类的特 ...

  8. Java三大特性(封装、继承、多态)详细讲解

    文章目录 封装 1 封装的好处 2 简单实现 继承 一.类继承简单实现 父类:动物类 子类 猫类 狗类 二.类继承的详细讲解 1. 类继承中成员变量的访问 1.1 成员变量之间的访问 (变量不重名的情 ...

  9. Java 三大特性 —— 多态

    Java中多态性的实现 一.什么是多态 1.面向对象的三大特性:封装.继承.多态.从一定角度来看,封装和继承几乎都是为多态而准备的.这是我们最后一个概念,也是最重要的知识点. 2.多态的定义:指允许不 ...

  10. java多态 作用_关于Java三大特性之多态的总结

    面向对象的三大特性:封装.继承.多态.从一定角度来看,封装和继承几乎都是为多态而准备的.这是我们最后一个概念,也是最重要的知识点. 1.定义: 多态:指允许不同类的对象对同一消息做出响应.即同一消息可 ...

最新文章

  1. linux存储--共享内存机制mmap(十二)
  2. SSO [ OAuth2.0 ]
  3. 【OpenCV】OpenCV函数精讲之 -- namedWindow()函数
  4. SharpMap在web上的应用
  5. 带电插拔损坏设备原理_USB接口设备可以带电插拔吗?
  6. html5 斗鱼 苹果,斗鱼ios端手游直播方法
  7. 国产操作系统之统信UOS安装
  8. 微信公众号唤起微信支付
  9. 测试3.0u盘速度软件,分享三个3.0 U盘的性能测试,另征集测试
  10. 全志a20 开发板 linux,全志A83T开发板SDK资料,A20/A31S升级,QT5,Android5.1,Lubuntu
  11. word页眉页脚修改
  12. Python3.1 使用卡通头像网络模型生成卡通头像(基于GAN)
  13. 【Day4.5】走人行天桥去百丽宫海生馆
  14. 由 Apache Kylin 组建的 Kyligence 公司获得数百万美元的天使轮投资
  15. 现在哪个安卓模拟器比较好用--BlueStacks 5
  16. 自定义ViewPager和弹性圆PagerIndicator
  17. 电脑上最好的3个小说阅读器
  18. DeepFashion2服饰数据集下载(附解压密码)
  19. C#上位机(编码/汉字转换)
  20. 火星人虚幻开发学习笔记——第五周动画与AI基础

热门文章

  1. word表格复制到excel回车换行问题 1
  2. 微信800android1840,微信8.0版本官方版
  3. 201871010134-周英杰《面向对象程序设计(Java)》第四周学习总结
  4. Intellij Idea Database schemas显示
  5. Python初学(2)—— 基本数据类型
  6. 【附源码】计算机毕业设计java校园食堂订餐系统设计与实现
  7. 九种免费的PDF翻译工具,多国语言随意转换!
  8. bmob php支付,GitHub - bmob/bmob-php-sdk: PHP SDK相关源码
  9. (2)pokeman_简单卷积分类的例子
  10. CTF-Crypto 密码原理及解密方法