Java入门教程(26)——继承

news2024/12/24 3:09:59

文章目录

  • 1.继承的作用
  • 2.继承的关键字
  • 3.继承的特点
  • 4.实例
  • 5.instanceof 运算符

继承是面向对象三大特征之一,继承可以让我们减少代码量,实现类的复用

1.继承的作用

  1. 代码复用,更加容易实现类的扩展
  2. 方便建模

2.继承的关键字

extends,顾名思义,extends的字面意思是扩展,子类是父类的扩展,在日常生活中,继承无处不在。

3.继承的特点

1.通过extends关键字来继承

2.子类继承父类的属性和方法(但不见得可以直接访问,如父类的私有属性和方法),但是不继承构造方法

3.如果调用一个类的时候,没有使用extends,那么该类的父类是Object

4…java中只有单继承,没有多继承。

4.实例

public class Test{
    public static void main(String[ ] args) {
        Student s = new Student("张三",180,"数学");
        //调用了父类中的方法。
        s.rest();
        
        s.study();
    }
}
class Person {
    String name;
    int height;
    public void rest(){
        System.out.println("休息一会!");
    }
}
class Student extends Person {
    String subject;
    public void study(){
        System.out.println("正在上数学课");
    }
    public Student(String name,int height,String subject) {
//拥有父类的属性
        this.name = name;
        this.height = height;
        this.subject = subject;
    }
}

运行结果如下:

在这里插入图片描述

5.instanceof 运算符

instanceof 是二元运算符,左边是对象,右边是类;当对象是右面类或子类所创建对象
时,返回 true;否则,返回 false。
实例:

import java.sql.SQLOutput;

public class Test{
    public static void main(String[ ] args) {
        Student s = new Student("张三",180,"数学");
        System.out.println(s instanceof Person);
        System.out.println(s instanceof Student);
//        s.rest();
//        s.study();
    }
}
class Person {
    String name;
    int height;
    public void rest(){
        System.out.println("休息一会!");
    }
}
class Student extends Person {
    String subject;
    public void study(){
        System.out.println("正在上数学课");
    }
    public Student(String name,int height,String subject) {
//拥有父类的属性
        this.name = name;
        this.height = height;
        this.subject = subject;
    }
}

运行结果如下:
s对象属于Student,然后Student继承了Person, 所以输出结果为true
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/73993.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网站都变灰了,几行代码可以实现

前言 这两天,我们经常逛的好多网站、app首页都变灰了,原因大家应该都知道了 网站变灰 ①B站 ②爱奇艺 ③ 腾讯视频 ④ csdn ⑤百度 怎么实现的呢? 难道这些网站开发商在网站开发的时候都准备一套灰色主题的UI么? 好奇心…

端水or信仰?ChatGPT“点评”Web3未来

近日,OpenAI发布了人工智能聊天机器人模型 ChatGPT,产品自11月30日发布到现在仅一周时间,就积累了上百万用户,广受大家好评。有人让它写代码,有人拿高考题目考验它,这些“难题”似乎都难不倒它,…

vue3 教程(上)

学 vue3 通过官方文档更详细,不过阅读本博客,可以更容易理解,且帮你速成! 官方文档(记得将API风格偏好切换为 组合式 否则你学的是vue2) https://cn.vuejs.org/guide/introduction.html 学习前的准备 创建…

[synchronized ]关键字详解

目录 1.synchronized 特性 1.1互斥性 1.2内存刷新 1.3可重入 2.Java 标准库中的线程安全类 3.死锁问题 3.1 一个线程,一把锁 3.2 两个线程,两把锁 3.3 多个线程,多把锁 4.死锁的条件 1.synchronized 特性 1.1互斥性 synchronized 关键字会起到互斥效果,当某个线程执…

【C语言】字符串函数(一)

目录 一、strlen函数(计算字符串长度) 1、strlen函数的用途 2、strlen函数的使用 3、strlen函数的模拟实现 二、strcpy函数(字符串拷贝) 1、strcpy函数的用途 2、strcpy函数的使用 3、strcpy函数的模拟实现 三、strcat函数(字符串追加) 1、strcat函数的用途 2、strcat函数的使用…

【JavaSE】接口剩余内容

目录 1、接口使用实例 📕逐步分析学生数组排序的写法 ✨思路: ✨代码实现 ✨弊端 📕、改进 改进思路: 代码实现: 2、Cloneable接口和深拷贝 2.1、cloneable接口的作用 2.2、深拷贝和浅拷贝 2.2.1、浅拷贝 …

yum安装openldap2.4.44,并配置增量复制(Delta-syncrepl)环境

本文是在centos7环境下通过yum安装openldap2.4.44,并配置增量复制(Delta-syncrepl)环境 官网对于增量复制介绍:https://www.openldap.org/doc/admin24/replication.html#Delta-syncrepl%20replication Delta-syncrepl 是 syncrep…

ADI Blackfin DSP处理器-BF533的开发详解3:GPIO(含源代码)

我们从最基础的GPIO开始,先讲外设,这玩意不管是单片机,还是ARM,又或是FPGA,甚至SOC的芯片,都有GPIO,有共性,就好理解,让我们看看在ADI的DSP里头,GPIO是怎么一…

MySQL数据库学习(2)

一.MySQL语法书写规范: (1).SQL语句要以分号;结尾 在 RDBMS(关系型数据库)当中,SQL语句是逐条执行的,一条 SQL语句代表着数据库的一个操作。SQL语句是使用英文分号;结尾。 (2).SQL语句不区分大小写 SQL不区分关键字的大小写。例如&#xff0c…

CentOS7下mysql主从复制搭建

mysql安装 CentOS7安装MySql5.7完整教程_长头发的程序猿的博客-CSDN博客_centos7 mysql5.7安装 1、配置主机 1.1、修改my.cnf配置文件 vim /etc/my.cnf 最后一行添加: #主服务器唯一ID server-id1 #启用二进制日志 log-binmysql-bin #设置不要复制的数据库(可…

C++之虚函数

都说面向对象的三大特性是封装、继承、多态。C作为一门面向对象编程语言,肯定也是具备了面向对象的三大特性,那么在C中是如何实现多态的呢? 在C中是通过虚函数动态绑定的方式实现多态的。 虚函数与纯虚函数 首先我们来回顾一下虚函数&…

DAX:GROUPBY函数

DAX 中的 SUMMARIZE 函数功能强大,但同时也很难使用。 它可用于执行表之间的分组和连接,正如我们之前在分组数据一文中描述的那样。 不幸的是,它在计算聚合值时存在一些众所周知的性能问题。除了性能之外,SUMMARIZE 的计算限制是它…

ArrayList中的 subList 强转 ArrayList 导致异常

阿里《Java开发手册》上提过 [强制] ArrayList的sublist结果不可強转成ArrayList,否则会抛出ClassCastException异常,即java.util.RandomAccesSubList cannot be cast to java. util.ArrayList. 说明: subList 返回的是ArrayList 的内部类SubList, 并不是ArrayList …

一块RTX 3090加速训练YOLOv5s,时间减少11个小时,速度提升20%

作者|BBuf 很高兴为大家带来One-YOLOv5的最新进展,在《一个更快的YOLOv5问世,附送全面中文解析教程》发布后收到了很多算法工程师朋友的关注,十分感谢。 不过,可能你也在思考一个问题:虽然OneFlow的兼容性做…

SQL之substrate()函数用法

测试表字段查询如下: 测试在hive中截取前5位字符的第1种写法: 测试在hive中截取前5位字符的第2种写法: 测试在impala中截取前5位字符的第1种写法: 测试在impala中截取前5位字符的第2种写法: 结果: 1、在h…

带分数(蓝桥杯C/C++B组真题详解)

目录 题目 题目思路 题目代码 注解: 1.题目给定的判定条件为 2.关于next_permutation(start,end); 题目: 题目思路: 因为题目要求是满足在1到9中 不重复、不遗漏的所有满足条件的情况 所以我们可以通过全排列 把整数、分子、分母 …

B-树(B-Tree)与二叉搜索树(BST):讲讲数据库和文件系统背后的原理(读写比较大块数据的存储系统数据结构与算法原理)...

人类总喜欢发明创造一些新名词(比如说,简写/缩写/简称什么的),并通过这些名词把人群分成了三六九等。弄到最后,把自己都绕晕了。你看,首先就是,B树,不要与Binary tree或Btree混淆。B…

有奖征文 | 当我们谈操作系统时,我们在谈什么?

OS,Operating System,操作系统,计算机中最基本也是最重要的基础性系统软件。1991 年,大二学生 Linus Torvalds 写出 Linux0.01,经过几十年的发展,以 Linux 为代表的服务器操作系统,成长为一个既…

lambda之Stream流式编程

lambda之Stream流式编程 一、什么是 Stream Stream中文称为 “流”,通过将集合转换为这么一种叫做“流”的元素序列,通过声明性方式,能够对集合中的每个元素进行一系列并行或串行的流水线操作。换句话说,你只需要告诉流你的要求…

led护眼台灯对眼睛好?过来人说说led护眼灯是否真的能护眼

众所周知,现在绝大部分光源都是使用led发光,无论是室内照明灯、室外装饰灯、气氛调节灯、工作学习护眼台灯等等,都是使用led灯珠,那么也就有人会问了:led灯真的对眼睛好吗?Led护眼台灯真的能护眼吗&#xf…