抽象类可以做数组吗java_JAVA学习1221构造方法/this/static/继承/==及equals/super/多态/数组/抽象类/接口...

一、构造方法:

1,要点:

1-1,通过 new 关键字调用

1-2,构造器虽然有返回值,但是不能定义返回值类型(返回值的类型肯定是本类),不能在构造器里使用 return 返回某个值

1-3,如果我们没有定义构造器,则编译器会自动定义一个无参的构造函数。如果已定义则编译器不会自动添加

1-4,构造器的方法名必须和类名一致

2,创建对象的过程

2-1,分配对象空间,并将对象成员变量初始化为 0 或 空

2-2,执行属性值的显式初始化

2-3,执行构造方法

2-4,返回对象的地址给相关的变量

二、this 关键字

1,this 的本质就是“创建好的对象的地址”,由于在构造方法调用前,对象已经创建,因此,在构造方法中也可以使用 this 代表“当前对象”

注意:this 调用构造方法必须是方法的第一句,this 不能在 static 方法中使用

三、static 关键字

1,在类中,用 static 声明的成员变量为静态成员变量,也称为类变量,类变量的生命周期的类相同,在整个应用程序执行期间都有效

四、继承

1,java 中类只能是单继承,接口可以多继承,可以使用 ctrl+t 查看类的继承关系

五、== 和 equase

1,==:代表比较双方是否相同,如果是基本类型则表示值相等,如果是引用类型则表示地址相等即是同一个对象

2,equals:Object 类中定义有:public boolean equals(Object obj) 方法,提供定义“对象内容相等”的逻辑

六、super 关键字

1,super 是直接父类对象的引用。可以通过 super 来访问父类中被子类覆盖的方法或属性

注意:如果 a 继承 b,则 b 是 a 的父类,则只要调用 a 的构造方法,执行时一定会先调用 b 的构造方法

七、多态

1,多态的要点:

1-1,多态是方法的多态,不是属性的多态(多态与属性无关)。

1-2,多态的存在要有3个必要条件:继承、方法重写,父类引用指向子类对象

1-3,父类引用指向子类对象后,用该父类引用调用子类重写的方法,此时多态就出现了

八、数组

1,数组是相同类型数据的有序集合,数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成,其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们

2,数组的三个基本特点:

2-1,长度是确定的,数组一旦被创建,它的大小就是不可以改变的。

2-2,其元素必须是相同类型,不允许出现混合类型

2-3,数组类型可以是任何数据类型,包括基本类型和引用类型

注意:数组变量属于引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量

九、抽象类(abstract)

1,抽象类就是一种模版模式,抽象类为所有子类提供了一个通用模版,子类可以在这个模版基础上进行扩展,通过抽象类,可以避免子类设计的随意性,通过抽象类,我们就可以做到严格限制子类的设计,使子类之间更加通用

2,要点:

2-1,有抽象方法的类只能定义为抽象类

2-2,抽象类不能实例化,不能用 new 来实例化抽象类

2-3,抽象类可以包含属性、方法、构造方法,但是构造方法不能用 new 实例,只能用来被子类调用

2-4,抽象类只能用来继承

2-5,抽象方法必须被子类实现

十、接口 interface

1,接口中只有:常量、抽象方法

2,实现接口:implements

3,接口就是比“抽象类”还“抽象”的“抽象类”,可以更加规范的对子类进行约束。全面地专业的实现了:规范和具体实现的分离,接口就是规范,定义的是一组规则

4,接口是多继承的,继承了一个接口,必须实现该接口中的所有方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值