大家好,今天为大家带来,Java面向对象程序设计之继承和多态。
主要的知识点分为四点:1. 包
2. 继承
3. 重载和重写
4. 多态
那么现在开始我们的教学
第一个知识点:包
1.1 什么是包:包类似一个文件夹,然后一个包就代表一种类型,里面也保存这一类类型的文档,便有查找和管理。
下图就是eclipse编程软件创建的ss包
1.2 包的导入
基础导入语法:
import <包名>.<类名>
如果需要导入多个类
import <包名>.*
//*就是代表包中的所有类
第二个知识点:继承
2.1 什么是继承:生动形象点说就是父亲与儿子,当定义了某个类是你的父类,然后作为子类的你就将继承父类里面的所有信息,如:方法,属性等;又比如,小汽车,货车,公共汽车都具备车的基本特征和行为,所以他们可以称为子类,而车可以是称为父类,子类在父类的基础上去复杂化。
基础语法:
[修饰符] class 子类名 extends 父类名{
//类的定义部分
}
//extends 是继承的关键词
2.2 继承的实现
肯定会有很多小伙伴问,我们什么时候需要用到继承?
举个例子:我需要写一个圣剑类和长矛类,类里面都包含属性武器名和攻击值 和一个攻击的方法等。然后按正常的去写这两个类的时候意味着我们要写两次代码,就是有着大量的重复代码,然后这样就很不方便也不易于程序的扩展,然后我们可建立一个公共类,去在里面写这些大量重复的代码,再提供给其它类调用,这样就可以大量减少重复的代码,实现代码的复用,提高效率。这里的公共类就可以相当于父类,而调用或者引用的就可以称是子类。
第三个知识点:重载和重写
3.1 重载:方法的重载,是指一个类中的多个方法可以具有相同的方法名,但这些方法的参数必须不同
public class Book{
//定义三个方法名相同的方法
public float getPrice(){
return 100;
}
// 根据图书页数计算书本价格
public float getPrice(int page){
returnn (float) (page*0.1);
}
// 第三种方法
public float getPrice(){
return (float) (page*discount);
}
}
3.2 重写:子类以父类为基础,继承了父类的方法后在自己的类里面重写代码可以增加新的属性和方法,但是注意重写的时候请保证方法名类名相同。
父类:
//定义一个父类
public class Brid{
//无参,无返回值
public void aaa(){
System.out.println("谢谢你的到来~");
}
}
子类重写:
// 定义一个子类继承Bird的父类
public class Birds extends Bied{
public void aaa(){
System.out.println("感谢支持~");
}
}
这就是最基础的重写实列~
第四个知识点:多态
多态:多态是指同一一个操作,作用在不同的对象,可以又不同的解释,以致产生不同的执行结果(通俗一点就是:同一个定义的对象,进行不同的操作,产生的不同结果的这个形式过程 称为多态)
具体关于多态的使用可以参考下:https://blog.csdn.net/qq_38091375/article/details/81490700