this和super关键字的使用和说明-创新互联
this关键字
分享名称:this和super关键字的使用和说明-创新互联
文章地址:http://ybzwz.com/article/ehosg.html
- this 关键字的使用
- 1. this 关键字用途
- 2. this 修饰属性和方法
- 3.this 调用构造器
- super 关键字的使用
- 1.super 关键字用途
- 2.super 的使用
- 3.super 调用构造器
- 4.子类对象实例化的全过程
用来修饰、调用:属性、方法、构造器
2. this 修饰属性和方法 this 理解为:当前对象 , 或当前正在创建的对象。
- ①在类的方法中,我们可以使用 "
this. 属性
" 或 "this. 方法
" 的方式,调用当前对象属性或方法。 - ②通常情况下,我们都选择省略“this.”。特殊情况下,如果方法的形 参和类的属性同名,我们必须显式的使用 "
this. 变量
"的方式,表明此变量 是属性,而非形参。 - ③在类的构造器中,我们可以使用 "
this. 属性
" 或 "this. 方法
" 的方式, 调用正在创建的对象属性和方法。 - ④但是,通常情况下,我们都选择省略“this.”。特殊情况下,如果构 造器的形参和类的属性同名,我们必须显式的使用 "
this. 变量
" 的方式,表明此变量是属性,而非形参。
①.我们可以在类的构造器中,显式的使用 "
this( 形参列表 )
" 的方式, 调用本类中重载的其他的构造器!② 构造器中不能通过 "
this ( 形参列表 )
" 的方式调用自己。③ 如果一个类中有 n 个构造器,则最多有
n -1
个构造器中使用了 "this (形参列表 )
"。④ 规定: "
this( 形参列表 )
" 必须声明在类的构造器的首行
⑤ 在类的一个构造器中,最多只能声明一个"
this( 形参列表 )
",用来调用其他构造器。
super 理解为:父类的。
1.super 关键字用途可以用来调用:属性、方法、构造器 。
2.super 的使用- 2.1 我们可以在子类的方法或构造器中,通过 "
super. 属性
" 或 “super.方法
" 的方式,显式的调用父类中声明的属性或方法。但是,通常情况下,我们习惯去省略这个"super.” - 2.2 特殊情况:当子类和父类中定义了同名的属性时,我们要想在子类中调用父类中声明的属性,则必须显示的 使用 "
super. 属性
" 的方式,表明调用的是父类中声明的属性。 - 2.3 特殊情况:当子类重写了父类中的方法后,我们想在子类的方法中调用父类中被重写的方法时,必须显示的使用 "
super. 方法
" 的方式,表明调用的是父类中被重写的方法。
- 3.1 我们可以在子类的构造器中显示的使用 “
super( 形参列表 )
” 的方式 ,调用父类中声明的指定的构造器。 - 3.2 “
super( 形参列表 )
” 的使用,必须声明在子类构造器的首行! - 3.3 我们在类的构造器中,针对于 “
this( 形参列表 )
” 或 "super( 形参列表 )
"只能二选一,不能同时出现。 - 3.4 在构造器的首行,既没有显式的声明 “
this( 形参列表 )
” 或 “super( 形参列表 )
”,则默认的调用的是父类中的空参构造器。super() - 3.5 在类的多个构造器中,至少有一个类的构造器使用了 “super( 形参
列表 )”, 调用父类中的构造器。
- 从结果上看 :
子类继承父类以后,就获取了父类中声明的属性或方法。
创建子类的对象中,在堆空间中,就会加载所有父类中声明的属性。
- 从结果上看 :
- 从过程上看 :
当我们通过子类的构造器创建子类对象时 , 我们一定会直接或间接的调用其父类构造器,直到调用了 java.lang.Object 类中空参的构造器为止。正因为加载过所有的父类结构,所以才可以看到内存中有父类中的结构,子类对象可以考虑进行调用。
- 从过程上看 :
明确 : 虽然创建子类对象时,调用了父类的构造器,但自始至终就创建过一个对象,即为 new 的子类对象
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享名称:this和super关键字的使用和说明-创新互联
文章地址:http://ybzwz.com/article/ehosg.html