A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 大赟 初级黑马   /  2019-6-20 15:33  /  929 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Day1 继承&修饰符1. 继承
1.1继承的概念:
面向对象的三大基本特征之一,使子类可以拥有父类的属性和方法
1.2继承的格式:
语法: public class 子类 extends 父类.
1.3继承的优点:
提高了代码的复用性;
提高了代码的维护性.
1.4继承的缺点:
父类和子类强耦合(紧密联系)在一起了,子类无条件的继承父类的方法.
1.5继承中变量的访问特点:
规则:使用就近原则,局部优先原则.
子类的局部,子类成员,父类的成员.
1.6 super关键字的在访问成员变量时的用法:
super.成员变量名-->父类的成员变量;
this().成员变量名-->本类的成员变量.
1.7 继承中构造方法的访问特点(super调用构造方法):
super();子类回默认调用父类的无参构造方法,super()方法当中除注释以外的第一句代码,
this();本类的构造方法,方法当中除注释以外的第一句代码.
1.8 继承中成员的访问特点(super调用成员方法):
super.方法名()调用父类方法,
this.方法名()调用本类方法.
1.9 方法重写:
子类中出现和父类相同的方法.
1.10 方法重写的注意事项:
private方法不允许被重写,
private->默认->protected->public子类的方法的修饰符访问范围要大于父类的修饰符.
1.11 继承的注意事项:
类是单继承体系,
类是多层继承.
2.
2.1 package的概念:
包就是文件件,主要用来管理类.
语法:package com.test;
2.2 import的概念:
导入不同包中的java
语法:import com.test;
支持通配符* import com.test *;
3. 修饰符
3.1 权限修饰符
权限修饰符
同一个类
同包子类无关类
不同包子类
不同包无关类
private
可以
默认
可以
可以
protected
可以
可以
可以
public
可以
可以
可以
可以

3.2 final修饰符
变量:变量的值不可被改变;
方法:不可以被重写;
:不可被继承.
3.3 static修饰符
修饰属性:类名.属性名方式访问, 多个对象共享一个访问值.
修饰方法:类名.方法名()访问.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps2.pngDay2:多态的抽象类,接口多态的概念:
同一段代码在不同的时刻表现出不同的执行形态
多态的前提和体现
有继承/实现关系   有方法重写    有父类指向子类对象.
多态成员的访问特点
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps3.png多态的形式访问成员变量,访问的是父类的成员变量.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps4.png多态的形式访问成员方法,访问的是父类的成员方法,编译看左边,运行看右边.
多态的好处和弊端
好处:提高了程序的拓展性.
具体体现:定义方法的时候,使用父类作为参数,将来再使用的时候,使用具体的子类型参与操作.
弊端:不能使用子类型的具体操作.
多态中的转型
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps5.png向上转型:从子到父,父类引用指向子类对象  自动类型转化
向下转型:从父到子,父类引用转为子类对象 格式:子类 变量 = (子类强转)父类,强制类型转化
抽象类的概念
abstract 修饰的类
抽象方法的概念
没有方法体的方法.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps6.png抽象类的特点
1. 抽象类和抽象方法都需要abstract修饰
2. 抽象类里面可以没有抽象方法,但一个类有了抽象方法一定是抽象类.
3. 不能实例化,可以参照多态子类进行实例化,这叫抽象类多态
4. 抽象类的子类要么重写方法要么子类也是抽象类
抽象类的成员特点
1. 成员变量:可以是变量也可以是常量
2. 构造方法:有构造方法但是不能实例化,空参构造/有参构造
3. 成员方法:可以有普通方法和抽象方法.
接口的概述
特殊的类,类中所有方法都是抽象方法,作为一种行为规范.
接口的特点
1. 用关键字interface修饰,所有方法都是抽象方法.
2. 类与接口的关系是实现关系,类实现接口用implements表示.
3. 接口不能实例化对象
4. 接口的实现类,接口的实现类要么重写抽象方法,要么自己变成抽象类.
接口成员的特点
1. 接口中的成员变量默认被final/静态 修饰的,(常量被静态修饰),可以用接口名直接访问.
2. 接口里没有构造方法,主要是对行为进行抽象,所以没有具体方法
3. 接口里不能有非抽象方法,接口里的方法只能是抽象的,接口里的方法默认带public abstract.
类和接口的关系
类与类的关系:继承关系,单继承体系,支持多层继承.
类和接口的关系:实现关系,可以单实现,也可以多实现,还可以在继承一个类的时候实现多个接口
接口和接口的关系:接口和接口是继承关系并且是多继承.
file:///C:\Users\10373\AppData\Local\Temp\ksohtml15800\wps7.png 抽象类与接口的区别
成员区别
抽象类
变量,常量;有构造方法;有抽象方法,也有非抽象方法
接口
常量;抽象方法
关系区别
类与类
继承,单继承
类与接口
实现,可以单实现,也可以多实现
接口与接口
继承,单继承,多继承
设计理念区别
               
                                          
抽象类
对类抽象,包括属性.行为
接口
对行为抽象,主要是行为

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马