1、方法
普通方法:4个必要,1个可选
1):必须有返回值类型,没有返回值用void表示
2):必须有名字
3):必须有()和形参
4):必须有{}方法体
5):可选static,表示静态的方法,可以用类名直接调用
2、类与对象
在分析问题的时候,先有类后有对象,类是由成员变量和成员方法组成的,写代码的时候先有的类后有的对象。
类是创建对象的模板,对象是类的具体实例。
对象的创建和使用:
1)new+构造函数创建对象,分配内存
2)使用对象,不管是属性还是方法,都用对象.访问
3)每个对象都有自己的属性
4)所有的对象共享同一个方法-->方法中还会用到属性,这个属性是谁的---谁调用我,属性就是谁的
3、抽象类VS接口
相同点:都不能产生对象 | 不同点:关键字不同 class interfacce extends implement
一般都有抽象方法 | 抽象类是一种特殊的类,类是数据和方法的有机结合,而接口偏功能没有普通数据
| 类只能单继承,而接口可以多实现,变相的实现了多继承
| 语义上的区别:继承是java OO的重要特点之一,语义比较严格,要符合is-a的关系
而接口语义相对宽松,可以是is-a的关系,也可以是has-a的关系
关于接口: jdk1.8之后,接口中可以定义方法体,但是要加default,还可以写lamba表达式。
4、抽象和多态
*抽象
java中两个地方需要用到抽象:1)分析事物事有客观对象抽象成类,分析他们的属性和方法,就可以定义class了
2)由类的共同属性和功能进一步向上抽取成其父类(抽象类)
*多态
多态是多种形态的意思,是指在运行时按照对象的实际类型来确定调用的方法
多态的三个必要条件:继承,重写,父类对象引用指向子类对象
5、重载(overload)和重写(override)
1)重载是指同一个类中,多个同名方法,它们的参数签名不同(个数,顺序,类型)
2)重写是指有继承关系的两个类中,子类对父类可访问的方法不满意,进行重写,父子方法返回值类型,名字,参数签名都必须一样。
重写的子类方法的访问控制权限要不小于父类的
重写的子类方法不能跑出新的checkedException,RuntimeException无所谓