构造器

Posted 王者之笔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构造器相关的知识,希望对你有一定的参考价值。

构造器:(不清楚到底此方法内部有无返回值,本人意见:虽然不写,但是返回的是此对象)

构造器:用于创建对象并给属性初始化

修饰符  类名(){

}

Private    本类    public  到处都可以用

Get   set

面向对象的三大特性:封装   继承   多态

封装:

属性私有化对外提供共有的访问方法

封装的类包括:

私有属性   共有get set方法     无参构造   全参构造

继承:

作用:解决代码重复性问题,把公有的属性和方法提取出来

格式:使用extends关键字

如果子类继承了父类,那么子类具有父类的属性和方法,父类不能访问子类的属性和方法

特性:

1)一个子类只能有一个父类,(单继承特性),一个父类可以有多个子类

2)创建子类对象的时候会把父类的对象一并创建出来

从顶级的对象依次往下创建,最后创建的是最底层的对象

如果不写,在子类的构造方法里会首先调用父类的无参构造方法

3)继承具有可传递性(孙子课可以访问爷爷的属性或方法)

4)任何一个类都有一个继承关系,如果没写默认继承自object,Object是超类,是所有类的父类

5)父类的私有方法或属性子类无法访问。

父类的构造方法子类是否可以访问。父类的构造方法子类是不可以访问的。

方法的重写:(父子类之间)

概念:父类的方法无法满足子类的需求,子类会对父类的方法重写overide

方法的重载和重写的对比

 

 

重载                          重写

类                                                       同一个类中                     有继承关系的父子类中

修饰符                                              没有要求        父类的修饰符必须比子类的修饰符要严格

返回值类型                                      没有要求                        必须相同

方法名                                              必须相同                                                  必须相同

参数列表                                          必须不相同                      必须相同

方法体                                              没有要求                        一般不相同

 

This   和super

This:同一个类中属性、方法、构造方法的调用   自身对象的指针

Super:父类中的属性、方法,或者构造方法的调用   父对象的指针

修饰符:

Public      同类  子类 同包 不同包  不同类

Protected         同包或者子类中访问

默认的(default)   同包中调用

Private                      同一类中使用(最严格的)

以上是关于构造器的主要内容,如果未能解决你的问题,请参考以下文章

每天学一点Scala之class 构造器

java基础 —— 声明构造器与不声明构造器

构造器

Java构造器(构造方法/constructor)

Swift中可能失败的构造器的传播(调用)和重写

swift构造器_009-swift构造器