java初学者学习笔记

继承是什么
继承就是.将super的变量和函数直接拿过来用.然后子类有自己的变量.

如何构造
1) Java的默认构造函数

首先new的时候会调声明好变量.

1如果一个类,不定义同名的构造函数,那么声明之后,会用默认的构造函数进行赋值(也许根本就没调用).

2如果有构造函数,就会按照参数进行调用.


这里有个细节.如果类里面有构造函数,那么就会不再调用默认的,就必须在new的时候调用这个构造函数.(一定要使用super传进来所需要的参数,或者有无参数的构造函数在上面)

还有用this去写不会出错.比较好.


2)子类父类顺序.

首先声明父类 父类构造函数

声明子类成员 子类构造函数


3)如何使用父类的方法?
父类的成员一般是private的.这时候就像构造一样,不能子类直接完成.使用super.f().来调用父类的方法.


4)多态调用函数的细节.(绑定)

这个要注意,多态和重载是密不可分的.只有触发了重载,才可以进行多态的函数动态绑定调用,简单说

多态 可以认为分为静态多态(重载) 和动态多态 (重写).

动态绑定的前提是

1。需要有继承的存在。
2。需要有方法的重写
3。父类引用指向子类对象。

这里面的讨论是一个小问题的细节

http://mooc.study.163.com/learn/NEU-2001224004?tid=2001309021#/learn/forumdetail?pid=2001571079


5)什么是静态方法

static final 和private的处理不太一样.这些都在编译阶段就可以确定.

6)什么是override?

当子类使用父类的函数签名(函数名 和 参数类型一致)就触发了override.这时候有两个要求

1)子类的访问性不能低于父类(当父类使用public 子类也必须是public)

2)子类的返回类型要属于父类返回类型的子类型.

这里面还有一些关于函数签名的细节

1)子类不能有父类的相同函数,但是又不重写.

2)相同函数名不同调用参数,是不同的函数.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值