当前位置: 首页 > news >正文

3.29~3.30学习总结

刷题情况:

蓝桥杯刷题:

Java学习情况:

抽象类:如果将子类中抽取的共性行为(方法),子类的执行不一样的时候

(通俗一点来说,就是无法找到一个万能的方法体供子类使用,但这个行为是一样(例如:狗吃骨头,羊吃艹,这个行为是一致的,但父类的方法体不能够万能的描述这俩个动物的吃的行为,也就是确定不了方法体)将这个方法定义为抽象方法。

当一个类中存在了抽象方法的时候,那这个类一定是抽象类,用abstract修饰。

但是抽象类中允许存在普通方法。总结一下就是:存在抽象方法一定是抽象类,抽象类不一定有抽象方法。

抽象类不允许创建实例,也就是不允许创建对象。

抽象类的子类:要么重写抽象类的所有方法,要么这个类继续为抽象类。

抽象类中允许存在抽象方法。

接口和抽象类的区别:

意义上的不同:

接口体现的是一种规范,类似于整个系统的总纲。

抽象类体现的是一种模板式设计,抽象类可以被当作系统实现产品的中间产品,可以参与完成多个不同的最终产品。

语法上的不同

接口里面只允许存在抽象方法,静态方法和默认方法(default),不能为普通方法提供方法实现,

而抽象类中可以存在普通方法。

接口里面只能定义静态常量(public static final)

而抽象类可以有普通成员变量,也可以有静态常量。

接口没有构造方法。

抽象类有构造方法。

接口不能包含初始化块。

抽象类可以包含初始化块。

内部类:简单来说就是在一个类里面的类

成员内部类:一个类中和成员变量处于同一位置的类

非静态内部类:特殊的成员内部类(有static修饰)

静态内部类:特殊的成员内部类(有static修饰)

局部内部类(定义于方法中的类)(用处不大)

匿名内部类(重点):

内部类可以直接访问外部类的成员变量(无论是非私有还是私有)(类比,成员变量可以访问成员变量(无论是私有还是非私有))但是外部类不能直接访问内部类,需要创建内部类的对象才可以访问。

外部类静态成员不能访问非静态的内部类

非静态内部类里不允许定义静态成员(静态方法,静态初始化块,静态变量);

但是静态内部类里面可以有非静态内部类和静态内部类

这里补充static的一个知识,static的作用是把类成员变成和类相关,而不是实例相关,static修饰的成员属于整个类,而不是单个对象,而外部类的上一级程序单元是包,所以不可以使用static修饰,内部类可以使用static修饰,使得内部类变得和外部类相关。

静态内部类不能访问外部类的实例成员,只能访问外部类的静态成员。

匿名内部类:

匿名内部类不能是抽象类,因为匿名内部类在创建的时候就创建了匿名内部类的对象,因此不允许将匿名内部类定义成抽象类(抽象类不能创建实例,只能作为父类去派生子类)

匿名内部类不能定义构造方法,因为匿名内部类没有类名,所以无法定义构造方法,但可以定义初始化块,可以通过实例初始块来完成构造方法需要完成的事情。

最常用的创建匿名内部类的方式是需要创建某个接口类型的对象。

创建匿名内部类的时候,必须实现接口或抽象父类里的所有抽象方法,(如果有需要,也可以重写父类中的普通方法)

枚举类:

package exerse;public enum SeasonEnum {Spring,Summer,Fall,Winter;
}

枚举常量序数从0开始;

枚举类默认继承了java.lang.Enum类,而不是object类,因此枚举类不能显式继承其他父类,

使用enum类定义,非抽象的枚举类会默认使用final修饰,因此枚举类不能派生子类。

枚举类的构造器只能使用private访问控制符,如果省略了构造器(构造方法)的访问控制符,那么默认使用private修饰,如果强制指定访问控制符,那么只能指定private控制符,

!!!注意:枚举类的实例必须在枚举类的第一行显式列出,否则这个枚举类永远都不能产生实例。这些实例,系统会自动添加静态常量的修饰符(public static final)。

枚举类默认提供了一个values()方法,该方法可以很方便的遍历所有的枚举值。、

代码演示:

package exerse;public class EnumTest {public void judge(SeasonEnum s){switch (s){case Spring -> System.out.println("春天");case Summer -> System.out.println("夏天");case Fall -> System.out.println("秋天");case Winter -> System.out.println("冬天");}}public static void main(String[] args) {for (SeasonEnum s:SeasonEnum.values() ){System.out.println(s);}EnumTest p=new EnumTest();p.judge(SeasonEnum.Spring);}
}

枚举类和普通的类区别不大,差别在于,创建枚举类对象不能随意创建,创建的实例只能是枚举值。列出枚举值的时候,可以不用显示调用构造器,不用使用new关键字,就可以船舰枚举类对象。

在枚举类中添加私有构造方法,列出枚举值的时候传入参数:好处:更加安全,成员变量都不可随意改变。

枚举类和普通类一样,也可以实现一个或者多个接口,实现接口和普通类一致,

不是所有的枚举类都为final修饰,当枚举类的内部存在抽象方法的时候,这个枚举类就是用abstract所修饰,不是使用final修饰。这个时候存在派生子类。

相关文章:

3.29~3.30学习总结

刷题情况: 蓝桥杯刷题: Java学习情况: 抽象类:如果将子类中抽取的共性行为(方法),子类的执行不一样的时候 (通俗一点来说,就是无法找到一个万能的方法体供子类使用,但这…...

结构体详解 ——— C语言

目录 1.结构体 结构体类型的声明 结构的自引用 结构体变量的定义和初始化 结构体内存对齐 结构体传参 结构体实现位段(位段的填充&可移植性) 位段的内存分配 1.结构体 结构体类型的声明 结构的自引用 结构体变量的定义和初始化 结构体内存对…...

Java SE 基础(4) Java的语言特点

语言特点 Java是一门面向对象编程语言,不仅吸收了C语言的各种优点,还摒弃了C里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论&a…...

都炸店了,拼多多还在坚持什么

子超这两天听说了拼多多被“炸店”事件,第一反应是震惊:这都什么年代了,还有这种不择手段的暴力行为?所谓的炸店,就是一些人员被煽动和组织起来,有预谋地对店铺发起打砸行动,这和线下去打砸商铺…...

vue尚品汇商城项目-day01【6.Footer组件的显示与隐藏】

文章目录6.Footer组件的显示与隐藏6.1我们可以根据组件身上的$route获取当前路由的信息,通过路由路径判断Footer显示与隐藏6.2配置路由的时候,可以给路由添加元信息[meta],路由需要配置对象,它的key不能乱接、瞎写、胡写&#xff…...

命令行上的数据科学第二版 一、简介

原文:https://datascienceatthecommandline.com/2e/chapter-1-introduction.html 贡献者:Ting-xin 这本书是关于如何利用命令行做数据科学的。我的目标是通过教你使用命令行的力量,让自己成为一名更高效和多产的数据科学家。 在标题中同时使…...

utf-8转换到utf-16的转换过程你懂吗?

人生自是有情痴,此恨不关风与月。——唐代元稹《离思》 从UTF-8编码的文件中读取文本并将其存储到Java的String对象中,涉及到从字节序列到Unicode码点,再到UTF-16编码的转换。以下是详细的步骤: 从文件读取字节序列:首…...

C++编程大师之路:从入门到精通--持续更新中~

文章目录前言主要内容C基础入门初识C第一个C程序注释变量常量关键字标识符命名规则数据类型整型sizeof关键字实型(浮点型)字符型转义字符字符串型布尔类型 bool数据的输入运算符算术运算符赋值运算符比较运算符逻辑运算符程序流程结构选择结构if语句三目…...

面试阿里软件测试岗,收到offer后我却毫不犹豫拒绝了....

我大学学的是计算机专业,毕业的时候,对于找工作比较迷茫,也不知道当时怎么想的,一头就扎进了一家外包公司,一干就是2年。我想说的是,但凡有点机会,千万别去外包! 在深思熟虑过后&am…...

【c语言多线程编程】关于pthread_create()和pthread_join()的多线程详解

关于pthread_create()和pthread_join()的多线程详解 一、首先说一下pthread_create() 函数的用法: int pthread_create(pthread_t *thread,const pthread_attr_t *attr,void *(*start_routine) (void *),void *arg);各参数的含义: 1、pthread_t *thre…...

抖音seo矩阵系统源码搭建技术+二开开源代码定制部署

抖音已经成为了当今最为流行的短视频平台之一,拥有着庞大的用户群体和海量的视频资源。对于一些商家或者运营者来说,如何从这些视频资源中挖掘出有效的信息,进而提升自己的品牌、产品或者内容的曝光度,就成为了一个非常重要的问题…...

【周赛刷题】平衡树+图中最短环

2612. 最少翻转操作数(平衡树) 题目的难度有一部分在于数学推导。对于某个点 iii 进行反转是有一个范围的,这个范围需要考虑到边界的情况。可以的得到的一个结论是。对于窗口反转,KaTeX parse error: Expected group after ^ at p…...

C++笔记——第十篇 继承 的解析,详细易懂哦

目录 一、继承的概念及定义 1.继承的概念 2. 继承定义 2.1定义格式 2.2继承关系和访问限定符 2.3继承基类成员访问方式的变化 二、基类和派生类对象赋值转换 三、继承中的作用域 四、派生类的默认成员函数 五、继承与友元 六、继承与静态成员 七、复杂的菱形继承…...

SQL Server中的全文搜索

SQL Server中的全文搜索一、概述二、全文搜索查询三、将全文搜索查询与 LIKE 谓词进行比较四、全文搜索体系结构4.1、SQL Server 进程4.2、过滤器守护程序主机进程五、全文搜索处理5.1、全文索引过程5.2、全文查询流程六、全文索引体系结构6.1、全文索引结构6.2、全文索引片段6…...

自适应平移混音方法

一、简介: 自适应平移混音方法是一种常见的音频混音技术,它利用自适应滤波器对不同音频信号进行平移和加权,从而实现混音。 二、该方法的基本步骤如下: 采集和存储需要混音的音频信号。 对其中一个音频信号进行预处理&#xff0c…...

炼钢厂VR职业技能实训软件,提高员工学习效率和掌握技能速度

炼钢作业是一个高危、高压、高温的行业,在实际操作中需要严格遵守安全规范和操作规程,一旦出现差错可能造成巨大的经济损失和人员伤亡。 利用广州华锐互动开发的炼钢厂VR职业技能实训软件,可以有效帮助员工更好地理解和掌握炼钢作业中的相关…...

MySQL数据库范式

文章目录MySQL数据库范式1、范式的优缺点2、第一范式3、第二范式4、第三范式5、BC范式6、第四范式MySQL数据库范式 1、范式的优缺点 应用数据库范式的好处: 减少数据冗余(这是最主要的好处,其他好处都是由此而附带的)消除异常&…...

通过多层方法重塑网络安全

多年来,网络安全威胁的复杂性不断增加。此外,随着远程和混合工作场所模式的兴起,网络犯罪分子可以利用的漏洞数量显着增加。由于可能存在的网络威胁的范围如此之广,因此没有一种单一的解决方案可以应对所有威胁。 由于多种原因&a…...

Golang学习+深入(四)-运算符

目录 一、概述 1、算数运算符 2、关系运算符 3、逻辑运算符 4、赋值运算符 5、运算符优先级 6、位运算符 7、其他运算符 二、进制 1、进制转换 1、其他进制转十进制 2、十进制转其他进制 3、二进制转其他进制 4、其他进制转二进制 5、二进制在运算中的说明 三、…...

C++ 运算符重载:C++ 运算符重载的高级技巧和最佳实践

C 运算符重载:深入剖析与实现I. 引言A. 什么是运算符重载B. 为什么要使用运算符重载C. C运算符重载的优缺点II. 运算符重载基本概念A. 运算符重载的定义B. 运算符重载的分类1. 一元运算符2. 二元运算符C. 限制与规范1. 无法重载的运算符2. 重载运算符的规范与建议II…...

ai辅助开发c语言:如何利用快马智能编程助手精通数据结构与算法

今天想和大家分享一个特别实用的学习经验——如何用AI辅助工具高效学习C语言的数据结构与算法。作为一个刚接触数据结构的小白,我在实现单链表时遇到了不少坑,但通过InsCode(快马)平台的AI编程助手,整个过程变得轻松多了。 链表创建与节点插入…...

Z-Image Turbo用户反馈:实际使用体验总结

Z-Image Turbo用户反馈:实际使用体验总结 本文基于真实用户反馈,全面总结Z-Image Turbo绘图工具的实际使用体验,涵盖性能表现、功能效果、易用性等维度,为潜在用户提供参考。 1. 核心体验概述 Z-Image Turbo是一款基于Gradio和Di…...

热点 | Harness 架构深度解析:AI智能体编排框架的核心原理

热点 | Harness 架构深度解析:AI智能体编排框架的核心原理 声明: 📝 作者:甜城瑞庄的核桃(ZMJ) 原创学习笔记,欢迎分享,但请保留作者信息及原文链接哦~ 本文深度解析 Claude Code 背后的核心架构 Harness,揭示为何"Harness 比模型更重要"成为 2026 年 AI …...

SQLite在线查看器:浏览器中的数据库管理革命

SQLite在线查看器:浏览器中的数据库管理革命 【免费下载链接】sqlite-viewer View SQLite file online 项目地址: https://gitcode.com/gh_mirrors/sq/sqlite-viewer 在数据驱动的时代,SQLite数据库无处不在——从移动应用到桌面软件,…...

Alpamayo-R1-10B参数详解:Top-p=0.98与Temperature=0.6组合的工程意义解析

Alpamayo-R1-10B参数详解:Top-p0.98与Temperature0.6组合的工程意义解析 1. 项目背景与技术架构 1.1 Alpamayo-R1-10B核心定位 Alpamayo-R1-10B是NVIDIA开发的自动驾驶专用视觉-语言-动作(VLA)模型,其核心设计目标是通过类人因果推理能力提升自动驾驶…...

如何通过Nucleus Co-Op实现创新无缝的本地多人游戏体验

如何通过Nucleus Co-Op实现创新无缝的本地多人游戏体验 【免费下载链接】nucleuscoop Starts multiple instances of a game for split-screen multiplayer gaming! 项目地址: https://gitcode.com/gh_mirrors/nu/nucleuscoop 你是否曾经希望在同一台电脑上与朋友共同体…...

Qwen-Image-2512图片生成服务:支持多种宽高比,满足不同场景需求

Qwen-Image-2512图片生成服务:支持多种宽高比,满足不同场景需求 1. 引言:为什么宽高比如此重要? 在数字内容创作领域,图片的宽高比往往决定了它的最终用途。一张构图精美的图片,如果比例与展示平台不匹配…...

3步实现视频硬字幕精准提取:本地化多语言解决方案如何解决你的字幕难题

3步实现视频硬字幕精准提取:本地化多语言解决方案如何解决你的字幕难题 【免费下载链接】video-subtitle-extractor 视频硬字幕提取,生成srt文件。无需申请第三方API,本地实现文本识别。基于深度学习的视频字幕提取框架,包含字幕区…...

Qwen3-ASR-1.7B效果展示:实测多语言语音识别,准确率超高

Qwen3-ASR-1.7B效果展示:实测多语言语音识别,准确率超高 1. 开篇:一款让人惊艳的语音识别模型 最近测试了Qwen3-ASR-1.7B这款语音识别模型,结果让我大吃一惊。作为一款中等规模的模型,它在多语言识别上的表现完全不输…...

[Linux][虚拟串口]x一个特殊的字节

目标:构建带上下文记忆的猫咪聊天机器人 先看代码: from langchain_openai import ChatOpenAI from langchain_core.prompts import ChatPromptTemplate from langchain_core.messages import SystemMessage,HumanMessage,AIMessage import os from dote…...