JAVA笔记之多态与内部类

#博学谷IT学习技术支持##博学谷IT学习技术支持#

多态

1.多态:多态是同一个对象在不同时刻表现出来的不同形状
2.多态的前提:

1.有继承关系/实现关系
2.有方法重写
3.有父类引用指向子类对象

3.多态的访问特点:

1.构造方法:同继承一样,子类会通过super关键字访问父类构造方法。
2.成员变量:编译看左边(父类),执行看左边(子类)。
3.成员方法:编译看左边(父类)执行看右边(子类)。
注意:2.3访问方法不同是因为成员方法有重写,成员变量没有重写。

4.好处与弊端:

好处:提高了程序的扩展性。
弊端:不能使用子类特有的功能。

5.多态的转型:

1.向上转型:从子到父(父类引用指向子类对象)
例:Fu f = new zi ();
2.向下转型:从父到子(父类引用转为子类对象)
例:zi z = ( zi ) f;

内部类

1.内部类概述

内部类:就是在一个类中在定义一个类
举例:在A类中定义一个B类,那么B类就是内部类。
格式如下:
在这里插入图片描述

内部类访问特点:

1.内部类可以直接访问外部类的成员,包括私有
2.外部类要访问内部类的成员,必须创建对象
代码如下:
在这里插入图片描述

2.成员内部类
1.成员内部类的定义位置

在类中方法,跟成员变量是一个位置

2.外界创建成员内部类格式

格式:外部类名.内部类名 对象名 = 外部类对象.内部类对象;
举例:Outer.Inner oi = new Outer().new Inner();

3.私有成员内部类

将一个类,设计为内部类的目的,大多数都是不想让外界去访问,所以内部类的定义应该私有化,私有化之后,再提供一个可以让外界调用的方法,方法内部创建内部类对象并调用。
静态成员内部类
举例:
在这里插入图片描述

4.静态成员内部类访问格式:

外部类名.内部类名 对象名 = new 外部类名.内部类名();

5.静态成员内部类中的静态方法:

外部类名.内部类名.方法名();
举例:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值