java-day08
继承概念
继承是多态的前提,主要用于解决共性抽取
特点
子类可以拥有父类的内容,子类也可以有自己的专属内容
格式
public class 父类{}
public class 子类 extends 父类{}
如果子类与父类成员变量重名,逗号前是谁就优先使用谁,没有则向上找
重写
在继承关系中,子类与父类成员方法名一样,参数列表也一样,因为对象是子类的对象,所以优先用子类方法
注意事项
@override可以检测方法是否重写
子类的返回值小于等于父类返回值的范围
子类方法的权限大于等于父类方法的权限修饰符
继承后的构造方法
子类构造方法中有一个默认隐含的super关键字,所以一定是先调用的父类构造方法
可以通过super关键字子类构造调用父类重载构造方法
只用子类构造方法能够调用父类构造方法,且不能多次调用,且要放在方法体的第一句
super关键字用法
在子类方法中调用父类成员变量
super.成员变量名
在子类方法中调用父类成员方法
super.成员方法()
在子类构造方法中调用父类构造方法,且要放在第一句
super.构造方法()
this关键字
访问本类内容,调用时也要放在方法体的第一句,所以不能和super同时使用
Java语言是单继承的,只能有唯一一个父类,但可以多级继承(一个子类的直接父类只能有一个,但一个父类可以有多个子类)
抽象类
父类中的方法,如果不知道如何进行{}方法体实现,那么这应该就是一个抽象方法
格式
public abstract class 类名{
abstract void 方法名(); //定义抽象方法
}
注意事项
1.不能直接创建new抽象类对象
2.必须用一个子类继承抽象类
3.子类必须覆盖重写抽象父类中所有的抽象方法
去掉abstract关键字,补上{}
4.创建子类对象进行使用
java-day08的更多相关文章
- java - day08 - ArrayFounderTrans
package day07_addition; import java.util.Arrays; import java.util.Random; //数组 伸缩.增删.位移.复制 public cl ...
- java - day08 - PrimeNumLoop
质数循环查找 package day07_addition; //范围查找质数 public class PrimeNumLoop { public static void main(String[] ...
- 大数据学习day14-----第三阶段-----scala02------1. 元组 2.类、对象、继承、特质 3.函数(必须掌握)
1. 元组 映射是K/V对偶的集合,对偶是元组的最简单的形式,元组可以装着多个不同类型的值 1.1 特点 元组相当于一个特殊的数组,其长度和内容都可变,并且数组中可以装任何类型的数据,其主要用处就是存 ...
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 《JAVA笔记 day08 静态_单例》
//static关键字: /* 静态方法的使用注意事项: 1,静态方法不能访问非静态的成员. 但是非静态是可以访问静态成员的. 说明:静态的弊端在于访问出现了局限性.好处是可以直接别类名调用. 2,静 ...
- java 多线程 day08 java5多线程新特性
/** * Created by chengtao on 17/12/3. */public class Thread0801_java5_Atomaic { /* 三个包: http://tool. ...
- Java之路---Day08
2019-10-22-22:28:39 目录 1.Static静态类 2.Static内存图 3.Static静态代码块 4.Arrays类 5.Math类 Static静态类 一旦使用static修 ...
- Java基础Day08(多线程)
多线程 1. 线程 1.1 什么是线程: 程序中负责执行的哪个东东就叫做线程(执行路线,进程内部的执行序列或者说是进程的子任务) 多线程执行时,在栈内存中,每一个执行线程都有自己所属的栈内存空间.进行 ...
- Java 复习整理day08
package com.it.demo02_lambda; //接口, 表示动物. //public abstract class Animal { //报错, Lambda表达式只针对于接口有效 p ...
- java学习第二天面向对象.day08
this 在方法中表示调用当前方法的对象,this与主方法中对象类名调用是同理的,也是去指向堆中的地址. this可以解决成员变量和形参的问题 使用构造器还是setter方法 构造器:在创建对象的时侯 ...
随机推荐
- 【JZOJ3294】【BZOJ4417】【luoguP3990】超级跳马
description analysis 矩阵乘法好题 最朴素的\(10pts\)的\(f[i][j]\)容易\(DP\),但是是\(O(nm^2)\)的复杂度 于是把\(10\)分的\(DP\)写出 ...
- BeanFactory 和 ApplicationContext 区别
区别 BeanFactory: Spring里面最低层的接口,提供了最简单的容器的功能,只提供了实例化对象和拿对象的功能 BeanFactory在启动的时候不会去实例化Bean,中有从容器中拿Bean ...
- Linux grep 后通过 | 在次grep
grep 'info' info.log|grep 'info2' 先筛选出 包含‘info’的信息,再次筛选出包含'info2'的信息
- JZOJ5143:无心行挽
Description “What’s left to do when we’ve lost all hope?”“若内心万念俱灰,是否注定无心行挽?”------来自网易云音乐<Golden ...
- vue中使用腾讯云Im
在vue中使用腾讯云Im 通信时,官方给出的文档及sdk提供的都是es5的写法.我们在vue中使用均需要用es6的方式来改写sdk的js文件及按自己所需要的业务调用对应的api就行了 1.对sdk的j ...
- ionic-CSS:ionic 按钮
ylbtech-ionic-CSS:ionic 按钮 1.返回顶部 1. onic 按钮 按钮是移动app不可或缺的一部分,不同风格的app,需要的不同按钮的样式. 默认情况下,按钮显示样式为:dis ...
- Web 开发规范 — WSGI
目录 目录 WSGI 简介 为什么需要 WSGI 这个规范 WSGI 如何工作 WSGI的角色 Server 如何调用 Application application 的两个参数 applicatio ...
- RoadFlow2.7.5 MyController.cs
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- vs使用出现的一些常见错误(持续更新)
vs2010编译出错时怎么会执行上一次的结果_百度知道https://zhidao.baidu.com/question/193018332.html
- class7_Checkbutton 勾选项
最终的运行效果(程序见序号3): #!/usr/bin/env python# -*- coding:utf-8 -*-# ------------------------------------ ...