一篇文章带你入门Java继承
目录
- Java中继承
- 什么是继承:
- 为什么要用继承:
- 学习总结:
- 继承关键字:extends
- 总结
Java中继承
什么是继承:
继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。
为什么要用继承:
可以去掉重复代码,方便后期维护
举个列子,大家应该都玩过英雄联盟,每个英雄都是一个类,如果说不用继承的话每次都要重复定义每个英雄的成员属性,如下图我举了一个MF,一个EZ的列子
public class MissFortune { // 成员 // 属性 String nameID; int hp; int ad; int ap; int lv;// 人物等级 // 技能等级 int q_lv; }
public class Ezreal { // 成员 // 属性 String nameID; int hp; int ad; int ap; int lv;// 人物等级 // 技能等级 int q_lv; }
这样就创建了两个单独独立的英雄类,可以发现前半部分代码都是重复的,下面我们用继承来看一下
首先创建一个父类:
public class Hero { // 成员 // 属性 String nameID; int hp; int ad; int ap; int lv;// 人物等级 // 技能等级 int q_lv; }
然后再看我们的单独英雄类:
public class MissFortune extends Hero{ // 成员方法 // 初始化 public void initMissFortune(){ hp=570; ad=52; ap=0; lv=1; q_lv=1; } }
public class Ezreal extends Hero { // 成员方法 // 初始化 public void initEzreal(){ hp=530; ad=60; ap=0; lv=1; q_lv=1; } }
在此之中,父类的属性和方法 子类都可以继承到并 直接调用,简洁了代码,后期维护的过程中也不容易出错
学习总结:
继承关键字:extends
格式:
public class 子类名 extends 父类名{ }
总结
本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!
相关推荐
-
Java虚拟机类加载器之双亲委派机制模型案例
1. 双亲委派模型是什么? 当某个类加载器需要加载某个.class字节码文件时,它首先把这个任务委托给它的上级类加载器,递归这个操作,如果上级的类加载器没有加载,自己才会去加载这个类. 2. 双亲委派模型的工作原理? 1.如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去执行: 2.如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归,请求最终将到达顶层的启动类加载器:(每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传送到最顶
-
Java拦截器Interceptor和过滤器Filte的执行顺序和区别
目录 1.实现原理不同 2.使用范围不同 3.触发时机不同 4.拦截的请求范围不同 5.注入Bean情况不同 6.控制执行顺序不同 1.实现原理不同 过滤器和拦截器 底层实现方式大不相同,过滤器 是基于函数回调的,拦截器 则是基于Java的反射机制(动态代理)实现的. 1.拦截器是基于java的反射机制的,而过滤器是基于函数回调 2.过滤器依赖与servlet容器,而拦截器不依赖与servlet容器 3.拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用 4.拦截器可以访问
-
Java实现SMS短信通发送手机验证码案例讲解
注册网建短信通账号 链接:http://sms.webchinese.cn/ 设置短信签名 注意不要乱写别的公司等,会被视为诈骗信息 设置短信密钥,发送时代替密码 Java方式实现 导入依赖 commons-httpclient-3.1.jar 编写SmsUtil工具类 import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.NameValuePair; import org.ap
-
Java使用elasticsearch基础API使用案例讲解
1.依赖 我用的是 springboot 2.2.5.RELEASE 版本,这里只贴出主要依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency> 2.配置+测试源码 这里根据elasticsearch服务端的地址进行
-
一篇文章带你入门Java封装
目录 什么是封装 如何实现封装 代码展示 构造方法 注意点: 代码展示 总结 封装的优点 什么是封装 Java中的封装是将数据(变量)和作用于数据(方法)的代码作为一个单元包装在一起的机制. 在封装中,类的变量将从其他类隐藏,并且只能通过当前类的方法访问. 如何实现封装 可以分为两步: 第一步:将类的变量声明为private. 第二步:提供公共set和get方法来修改和获取变量的值. 代码展示 public class User { private String name; private in
-
一篇文章带你了解Java容器,面板及四大布局管理器应用
目录 什么是容器? 什么是面板? JPanel面板 JScrollPane面板 什么是布局管理器? 绝对布局管理器 流布局管理器 边界布局管理 网格布局管理器 容器.面板.布局管理器之间的关系 总结 什么是容器? 在Java的GUI界面设计中,关于容器的理解,从字面意思我们就可以认为它是存放控件的地方,而这个地方依托在窗体之上,常用的容器是container. 而关于container容器我们应该有这样的认识:Swing组件中的窗体通常是与容器相关联的,所以在一般情况下,建立完JFrame窗体后
-
一篇文章带你入门Java继承
目录 Java中继承 什么是继承: 为什么要用继承: 学习总结: 继承关键字:extends 总结 Java中继承 什么是继承: 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为. 为什么要用继承: 可以去掉重复代码,方便后期维护 举个列子,大家应该都玩过英雄联盟,每个英雄都是一个类,如果说不用继承的话每次都要重复定义每个英雄的成员属性,如下图我举了一个MF,一个EZ的列子 public class MissFortu
-
一篇文章带你入门java面向对象
目录 一.继承 示例: 二.重载 三.接口 1.接口与类相似点: 2.接口与类的区别: 3.语法 四.枚举 1.定义 2.迭代枚举元素 3.在 switch 中使用枚举类 总结 一.继承 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为 本章就以人.学生.老师作为例子.学生和老师都继承人这个对象,都有人的特征和行为,人就是父类,老师和学生就是子类 示例: 人类: package com.zhouzy.base.t7;
-
一篇文章带你入门Java修饰符
目录 定义 分类 访问控制修饰符 非访问控制修饰符 修饰符的使用说明 修饰类 修饰方法 访问控制修饰符 非访问控制修饰符 修饰变量 总结 定义 Java修饰符:修饰符用来定义类.方法或者变量,通常放在语句的最前端. 分类 主要分为2类: 访问控制修饰符 非访问控制修饰符 访问控制修饰符 可以使用访问控制符来保护对类.变量.方法和构造方法的访问.分为以下4中权限:private,default,protected,public. 权限说明: 修饰符 当前类 同包 子类(不同包) 不同包(其他类)
-
一篇文章带你入门java多线程
目录 一.描述 二.一个线程的生命周期 三.线程的优先级 四.创建线程 五.示例 1.Runnable接口 2.继承Thread 3.Callable 和 Future 创建线程 4.测试 总结 一.描述 Java 给多线程编程提供了内置的支持. 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销. 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个
-
一篇文章带你入门java集合
目录 一.简介 1.java集合框架图 2.集合框架体系 3.Set和List的区别 二.ArrayList 1.定义 2.用实例了解ArrayList 三.LinkedList 1.语法 2.示例 四.HashSet 1.定义 2.语法 3.示例 五.HashMap 1.定义 2.语法 3.示例 Java HashMap 方法 六.Iterator(迭代器) 1.定义 2.示例 七.List和数组互转 总结 一.简介 1.java集合框架图 从上面的集合框架图可以看到,Java 集合框架主要包
-
一篇文章带你入门java注解
目录 注解 什么是注解 内置注解 元注解 自定义注解 实例 总结 注解 什么是注解 Annotation是从JDK5.0开始引入的新技术 Annotation的作用: 1.不是程序本身,可以对程序做出解释(这一点和注释(comment)没什么区别) 2.可以被其他程序(比如:编译器等)读取 Annotation的格式: 注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如: @SuppressWarnings(value="unchecked")
-
一篇文章带你入门java方法
目录 方法的使用 什么是方法 方法的语法 基本语法 代码示例 注意事项 方法的调用 调用规则 代码示例 方法的重载 引例 使用重载 重载规则 方法递归 递归定义 代码示例 递归执行过程分析 总结 方法的使用 什么是方法 初次看到方法两字,心里有些疑惑.方法不是指为获得某种东西或达到某种目的而采取的手段与行为方式吗?这是我们日常生活中所说的方法.而在Java中, 方法就是一个代码片段,类似于C语言中的函数. 方法的存在意义: 1.当代码规模比较复杂的时候,能够模块化地组织代码. 2.做到代码被重复
-
一篇文章带你入门java模板模式
目录 Java设计模式-模板模式 什么是模板模式? 总结: Java设计模式-模板模式 什么是模板模式? 模板模式,顾名思义,就是通过模板拓印的方式. 定义模板,就是定义框架.结构.原型.定义一个我们共同遵守的约定. 定义模板,我们的剩余工作就是对其进行充实.丰润,完善它的不足之处. 定义模板采用抽象类来定义,公共的结构化逻辑需要在抽象类中完成,只将非公共的部分逻辑抽象成抽象方法,留待子类充实实现. 下面首先通过一个简单的程序来分析一下,例如:现在有三种类型:猪.机器人.人: 猪具备三种功能:吃
-
一篇文章带你入门Java字面量和常量
目录 引言 概念 字面量 字面量的分类 常量 总结 引言 ♀ 小AD:哥,前两天我没有闪现到刺客脸上了吧 ♂ 明世隐:在这方面做的有进步. ♀ 小AD:明哥教的好,通过学习Java关键字,游戏水平也得到了提升,一举两得,舒服. ♂ 明世隐:可是你看到残血还是上头啊,是了多少次,你说? ♀ 小AD:5.6次吧 ♂ 明世隐:岂止5.6,起码10次. ♀ 小AD:这不是看到200金币,经不住诱惑吗 ♂ 明世隐:关爱残血,你学哪里去了,游戏中就不能多一些人间的关爱吗?你就不能关爱一下放暑假的小弟弟小妹妹
-
一篇文章带你入门Java接口
目录 什么是接口: 关键字: 创建接口代码展示: 如何实现接口呢: 实现接口代码展示: 具体代码实现: 接口继承和类继承的区别: 总结 什么是接口: 接口是一系列方法的声明,是一些方法特征的集合 注意: 在接口中只有方法名,没有方法体! 关键字: interface(创建接口), implement(实现接口) 创建接口代码展示: public interface 接口名 { // 没有任何具体的实现 void 方法名(); //只有方法名,注意是; } 这样仅仅是创建了一个接口. 如何实现接口
随机推荐
- AngularJS表单基本操作
- JavaScript中Cookies的相关使用教程
- asp.net mvc3.0安装失败如何解决
- JS实现的不规则TAB选项卡效果代码
- javascript SocialHistory 检查访问者是否访问过某站点
- js通过googleAIP翻译PHP系统的语言配置的实现代码
- php获取随机数组列表的方法
- python中尾递归用法实例详解
- Python 正则表达式的高级用法
- C#中JavaScriptSerializer帮助类用法实例
- C# 常用公共方法
- 实现变速回到顶部的JavaScript代码
- vue-cli+webpack记事本项目创建
- 硬盘的真正凶手手工解决篇
- Memcached常用命令以及使用说明详解
- 利用python发送和接收邮件
- jQuery链式操作实例分析
- js监听键盘事件的方法_原生和jquery的区别详解
- IIS服务器下做301永久重定向设置方法[可以传参][图文]
- 浅谈Java反射与代理