首页 > 编程语言 >JAVA每日总结day6.21

JAVA每日总结day6.21

时间:2024-06-21 18:58:40浏览次数:14  
标签:总结 JAVA 构造方法 super 成员 day6.21 抽象类 父类 方法

ok了家人们,今天我们学习了面向对象中关键字的使用和抽象类,话不多说,我们一起看看吧,(今天终于星期五了,芜湖!!!)

一,thissuper关键字

1,this关键字的三种用法

1.1 this的意义 
this :表示当前对象 this 可以访问:本类的成员属性、成员方法、构造方法;
1.2 this.成员变量(第一种)

我们创建了一个Demo1类,并定义了一个没有封装的成员变量。

用了一个无参方法,

定义了一个show()方法,里面有一个局部变量,有两个输出语句

第一个输出语句打印了局部变量的值(num)

第二个打印了成员变量的值(this.num)

我们在主方法main中调用show()方法看看如何。

这就是this访问本类成员变量的基本使用了。

1.3 this.成员方法名();(第二种)

还是在Demo01中写,前面跟上面的一样没变,

在后面又定义了两个方法show02()和show03(),

并在show02()调用了show03()方法。

在主方法调用show01()方法和show02()方法,看看怎么个事。

可以看到我们在show02()方法中调用成功了,

这就是this访问本类成员方法的基本使用了。

1.4 this访问本类构造方法(第三种)

我们依旧是在Demo01中写,在第二种基础上加上了有参方法,

并在有参方法中调用了无参方法

我们创建Demo01类的对象看看怎么说,

这时有人可能会问,有参可以调用无参,那么无参可以调用有参吗?那当然可以了。

ok接下来我们看下super关键字的三种用法

2,super关键字的三种用法

2.1 super的意义

super :表示父类对象 super 可以访问:父类的成员属性、成员方法、构造方法;
2.2 super.父类成员变量名(第一种)

我们定义一个Super类,里面有一个成员变量。

子类smallSuper继承父类Super,里面定义了一个成员变量,

定义了一个show()方法,里面有一个局部变量

输出语句分别打印num,this.name,super.name

我们在main方法中调用一下show()方法看看

调用成功,这就是super访问父类的成员变量的基本使用了。

2.3 super.成员方法名();

我们在Super类中定义了一个方法method(),

我们又在子类smallSuper创建了一个同名方法method(),

我们在main方法中调用一下子类的method()方法

调用出来了,这就是super访问父类的成员方法的基本使用了。

2.4 super访问父类的构造方法

Super类中又加了两个方法,有参和无参方法,并有输出语句,有参方法里面有一个变量

子类也加无参方法,里面用super(num:10)调用父级的有参方法

也有一个输出语句

在main主方法创建子类对象,看看控制台的结果

ok,这就是super访问父类的构造方法的一个基本使用了。

2.5 注意事项
super 访问成员变量和成员方法 : 优先去父类中找 , 如果有就直接 使用 , 如果没有就去爷爷类中找 , 如果有 , 就用 , 依次类推 ...

子类的构造方法默认会调用父类的空参构造方法 , 如果父类中的没 有空参构造方法 , 只定义了有参构造方法 , 会编译报错。

3,抽象类

3.1 抽象类的概述和定义
概述 : 使用 abstract 关键字修饰的类就是抽象类 特点 : 这种类不能被创建对象 , 它就是用来做父类的 , 被子类继承的 抽象类的定义: 抽象类中的成员         成员变量         成员方法         构造方法         抽象方法

3.2 抽象方法
概述:没有方法体 , 使用 abstract 修饰的方法就是抽象方法 可以看到我们在父类chouXiang定义了两个抽象方法 我们在子类继承父类的时候报错了,是因为抽象方法,我们只需要 就ok了, 我们在main方法调用一下子类的方法, 这是抽象方法的使用
3.3 抽象类的特点
抽象类不能被创建对象,就是用来做 “ 父类 ” ,被子类继承的。 抽象类不能被创建对象,但可以有 “ 构造方法 ”—— 为成员属性初始化。 抽象类中可以没有抽象方法 , 但抽象方法必须定义在抽象类中子类继承抽象类后, 必须重写抽象类中所有的抽象方法 , 否则子类必须也是一个抽象类 子类 ok了家人们周一见。

标签:总结,JAVA,构造方法,super,成员,day6.21,抽象类,父类,方法
From: https://blog.csdn.net/2201_75555400/article/details/139864612

相关文章

  • JavaScript算法之龟兔赛跑
    简介:龟兔赛跑算法,又称弗洛伊德循环检测算法,是一种在链表中非常常用的算法。它基于运动学和直觉的基本定律。本文旨在向您简要介绍该算法,并帮助您了解这个看似神奇的算法。假设高速公路上有两辆车。其中一辆的速度为x,另一辆的速度为2x。它们唯一能相遇的条件是它们都在循环......
  • 【计算机网络】第四章.网络层 网络层重点知识总结(2)
    ......
  • Java——访问修饰符
    一、访问修饰符是什么Java中的访问修饰符用于控制类、接口、构造函数、方法和数据成员(字段)的可见性和访问级别。Java提供了四种访问修饰符:访问修饰符同一类内同一包内不同包的子类不同包的非子类适用对象public可见可见可见可见类、接口、变量、方法protected可见可见可见......
  • Java-英语字符串进行单词分割
    (摘自头歌)任务描述将一段英语字符串进行单词分割。相关知识需要掌握:如何将字符串进行分割。String.split()拆分字符串lang包String类的split()方法publicString[]split(Stringregex)publicString[]split(Stringregex,intlimit)//limit参数控制模式应用的次数,因......
  • java面向对象三大特征
     免责声明:java基础资料均来自于韩顺平老师的《循序渐进学Java零基础》教案,具体视频内容可以去B站观看,这些资料仅用于学习交流,不得转载用于商业活动1.Java面向对象三大特征Java面向对象编程有三大特征:封装、继承、多态1.1封装封装(encapsulation)就是把抽象出的数据【属性】......
  • C/C++ 缓冲区溢出问题总结
    缓冲区溢出(BufferOverflow)是一种常见的安全漏洞,它发生在当程序试图将更多的数据放入一个固定大小的内存区域(即缓冲区)时,超过了该区域所能容纳的数据量。这可能导致未定义的行为,包括数据损坏、程序崩溃,甚至更糟糕的是,攻击者可以利用这种漏洞执行恶意代码。一、缓冲区溢出概述缓冲......
  • 大模型技术及趋势总结
    本篇文章旨在希望大家对大模型的本质、技术和发展趋势有简单的了解。由于近期大模型技术发展很快,这里对大模型的技术、本质及未来趋势进行总结和探讨时,因为水平有限,疏漏在所难免。请大家谅解。引言大模型将成为通用人工智能的重要途径。在这个由0和1编织的数字时代,人工智能的腾......
  • java微信公众平台----带参数二维码生成和扫描事件
    功能是在详情页面点击按钮,生成二维码。打开微信扫码,扫码之后手机跳转到公众号并发送一条模板消息。点击模板消息,跳转到H5的详情页面。参考推荐:https://blog.csdn.net/weixin_42720002/category_8977300.html官方文档:https://developers.weixin.qq.com/doc/offiaccount/Account_Ma......
  • 游泳耳机戴久了对人体有危害吗?6大精心总结游泳耳机选购策略!
    随着科技的发展,游泳爱好者们如今能够享受到一边畅游池畔,一边聆听音乐带来的乐趣。然而,长时间佩戴游泳耳机并非无条件的好事,它可能对我们的听力健康产生影响。在享受水下世界的动感旋律的同时,我们有必要了解游泳耳机的潜在危害,并掌握科学的选购策略。(上图为之前测试过的部分......
  • Java基础:throw和throws的详解
    总结来说,throw是用来抛出一个具体的异常实例,而throws是用来声明方法可能会抛出哪些类型的异常,是对调用者的一种通知和要求。1.throw作用:throw关键字用于在方法体内实际抛出一个异常实例。当程序运行到throw语句时,指定的异常会被创建并抛出,立即终止当前方法的执行,并将控制权......