企业级开发-多态

多态

  1. 什么是多态

同一动作作用于不同的对象所产生的不同行为。

  1. 什么是多态性

两种体现形态
1.方法的重写和重载
2.子类对象的多态性(可以直接应用在抽象类和接口上)

  1. 对象的多态性是什么?

一个对象多种形态,在Java中,子类的对象可以替代父类的对象去使用。

  1. 多态性种类

第一种:编译时多态性
对于多个重名方法,如果在编译时能够确定执行同名的方法中的哪一个,则称为编译时多态性。
第二种:运行时多态性
如果编译时不能确定,只有在运行时才能确定执行多个同名方法中的哪一个,则称为运行时多态。

重写

  1. 方法重写的规则

1.在继承关系的子类中
2.重写的方法名、参数、返回值类型必须与父类相同
3.私有方法不能继承因而也无法重写

  1. 重写与重载的区别
    在这里插入图片描述

  2. 对象的转型

向上转型和向下转型
Pet是父类,Dog是继承Pet类的子类
例子:Pet pet1 = new Dog(“小白”,“泰迪”); //向上转型 现在Pet1 引用指向一个Dog对象
Dog dog1 = (Dog)pet1; //向下转型 现在Pet1 指向Dog对象

  1. final关键字

1.final修饰的类不能被继承。提高安全性,提高程序的可读性。 例如String类、System类、StringBuffer类
2.final修饰的方法不能被子类重写
3.final修饰的属性为常量。一旦初始化后,不可再被赋值。习惯上,常量用大写字符表示
例子:final double PI = 3.14;

  1. static关键字

定义:静态,可以用于修饰成员变量和成员函数。
使用范围:在Java类中,可用static修饰属性、方法、代码块、内部类
被修饰后的特点:随着类的加载而加载、
优先于对象存在、
修饰的成员,被所有对象所共享、
访问权限允许时,可不创建对象,直接被类调用

  1. 类变量
1.由类创建的所有的对象,都共用这一个对象
2.当其中一个对象对此属性进行修改,会导致其他对象对此属性的一个调用
3.类变量随着类的加载而加载,而且独一份
4.静态的变量可以直接通过"类.类变量"的形式来调用
5.类变量的加载要早于对象,所以当有对象以后,可以"对象.类变量"使用。但是"类.实例变量"是不行的
6.类变量存在于静态域中
  1. 类方法
1.在静态方法里只能直接调用同类中其它的静态成员(包括变量和方法),而不能直接访问类中的非静态成员。
2.静态方法不能以任何方式引用this关键字。因为静态方法在使用前不用创建任何实例对象,当静态方法被调用时,this所引用的对象根本就没有产生。
3.main() 方法是静态的,因此JVM在执行main方法时不创建main方法所在的类的实例对象,因而在main()方法中,我们不能直接访问该类中的非静态成员。
  1. 类变量和类方法的特点
    1.随着类的加载而加载,只加载一次
    2.类属性作为该类各个对象之间共享的变量
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值