Java第二天学习(重点总结2)

前言

这几天每天都在写博客,但是由于课程进度不能落下,每天都输入着大量的内容,再加上在课程讲解的时候,我会经常去把老师布置的案例题目做一些拓展,所以时间上就会比较赶。所以从今天开始,我的博客将不会以天为单位记录,而是以重要知识点作为记录,这样既能巩固我的知识,又更加的省时间。

继承

Java有三大特性:面向对象,继承,多态。前面已经提到了面向对象的概念,今天就主要是说继承,继承也是多态这个特性的前提。继承能够解决的问题就是:共性抽取复用。这样就可以大大的减少代码的重复利用。
1.继承的基本格式class A extends B:这里A就称为是子类,B就可以称为父类

1.继承的特点

(1)父类没有子类的内容
(2)当父类与子类的成员变量重名,可以通过关键字来控制
– 1.访问本类成员变量:this.变量名;
–2.访问局部变量:直接变量名;
– 3.访问父类的成员变量:super.name
(3).访问成员方法的规律:创建的对象是谁,就优先用谁,如果没有就向上找

2.继承中构造方法的访问

–1.子类构造方法中有一个默认的super()调用,所以如果什么都没写,则默认使用这个,所以先调用父类构造
–2.子类可以通过super关键字,可以调用父类重载的构造方法

3.注意事项

–1.子类方法的返回值必须小于父类的范围
–2.子类方法的权限必须大于等于父类方法的权限
–3.Java是单继承语言,一个子类只能有一个父类,但是可以多级继承,即可以有爷爷
–4.所有的类都是Object的子类
–5.super的父类构造调用,必须是子类调用的第一句,且不能多次调用super(只有构造方法才能调用父类的构造方法)

多态

多态是java的另一个重要特性,多态就是指一个***对象***可以有多种形态,这里的形态是指,可以理解为它自己所对应的类,或者它的父类。多态的作用这一块,我能想到的就是
如果一个方法需要传一个对象类型的参数(假设是汽车),那么通过多态最后可以将汽车下面的子类传进去,那就是向上转型了。

1.格式:

父类name 对象name=new 子类name()
或者:
接口name name对象=new 实现类();

2.特点:

(1)多态中的成员变量特点:
1.直接通过对象访问:看等号左边的类是哪一个
2.间接访问:直接通过父类的构造方法中的变量
(2)成员方法的规则:
new 后面是哪一个类就是那个成员方法

3.向上转型:

格式就是之前的: 父类name 对象=new 子类name();//右侧虽然创建的是子类,但是可以当作父类来用。
特点:向上转型是安全的,就类似于数据类型的自动转换。
弊端:当子类中有其他的方法时(即父类中没有的方法时),父类就无法调用那个多余出来的方法

4.向下转型:这里其实是一个还原的动作,将父类还原成原来的子类

格式:子类name 对象=(子类名称)父类; 例如:Animals animal=(cat) Animals;
特点:在向下转型之前必须得进行向上转型。因为如果对象本来不是猫,那么向下转型就会出现问题。

5.补充:instanceof 关键字

作用:是用来判断这个类的父类的引用对象,本来应该是哪个子类
子类名 instanceof 父类 -----返回bool类型的数值,这里前后的两个内容,必须时子类与父类的关系,或者实现类与接口的关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值