- 博客(63)
- 资源 (2)
- 收藏
- 关注
原创 自学Java全攻略:从入门到进阶,开启编程之路(附视频和书籍)
在当今数字化时代,Java作为一门广泛应用于企业级开发、移动应用、大数据处理等领域的编程语言,凭借其稳定性、跨平台性和丰富的生态系统,始终占据着编程语言排行榜的前列。对于想要进入软件开发行业或提升自身技能的人来说,自学Java是一个极具性价比的选择。本文将为你提供一份详细的自学Java指南,并在文末附上优质免费视频资源,助你高效开启编程之旅。链接: https://pan.baidu.com/s/1AO2gHfvW6m2U9B2WJQxDLg?pwd=8888 提取码: 8888。
2025-04-11 16:43:43
138
原创 JAVA经典书籍推荐
链接: https://pan.baidu.com/s/1AO2gHfvW6m2U9B2WJQxDLg?Effective Java中文版(第3版)(作者 [美] Joshua Bloch 译者 俞黎敏).pdf。Java并发编程实战([美]Brian Goetz,等 童云兰,等).pdf。Java入门经典(第6版) Rogers Cadenhead.epub。Spring 实战(第6版)(Craig Walls).epub。Java编程的逻辑 (Java核心技术系列)-马俊昌.epub。
2025-04-11 16:26:03
278
原创 MySQL 编程基础(结构化查询语言 SQL、MySQL 语言结构)
用于定义数据库结构,如CREATE、ALTER和DROP。这些语句用于创建、修改和删除数据库中的对象,如表、索引、视图等。
2024-10-19 17:03:40
526
原创 MySQL 系统特性与工作方式
这些日志包括事务日志、错误日志、二进制日志等,它们可以用于事务的回滚和恢复、数据库的备份和复制等功能。:MySQL支持各种扩展功能,如分区、复制和分片等,使得它能够处理大规模的数据和复杂的业务需求。:MySQL可以与多种操作系统和硬件配置一起工作,具有很强的兼容性,能够在Windows、Linux、Unix等多种操作系统上运行。:MySQL的安装和配置相对简单,提供了丰富的文档和社区支持,使得开发者可以快速上手并开始使用。:MySQL提供了多种安全机制,如数据加密、访问控制等,以保护数据库的数据安全。
2024-10-19 17:02:54
515
原创 C++文件的 I/O 操作
在C++中,文件的I/O(输入/输出)操作主要通过文件流(file streams)来实现。C++标准库提供了三种文件流类:std::ifstream用于输入(读取)文件,std::ofstream用于输出(写入)文件,而std::fstream则同时支持输入和输出操作。
2024-10-10 21:36:55
428
原创 C++使用格式控制数据的输入输出
在C++中,格式控制数据的输入输出主要通过流操纵符(stream manipulators)和流格式状态标志(stream format state flags)来实现。这些特性允许程序员精细地控制数据的表示方式,包括宽度、精度、对齐方式、填充字符等。
2024-10-10 21:35:43
518
原创 C++流的概念
在C++中,流(Stream)是一种用于输入和输出操作(I/O)的抽象机制。它允许程序与外部世界(如文件、屏幕、设备等)进行数据交换。C++的流库(I/O Streams Library)提供了灵活且强大的I/O功能,可以处理不同类型的输入输出需求。
2024-10-10 21:35:03
623
原创 C++类模板的定义和使用方式
类模板的定义以template关键字开始,后面跟着一个尖括号()内的模板参数列表。模板参数列表可以包含一个或多个模板参数,每个参数可以是类型参数(如typename T或class T)或非类型参数(如整数常量)。public:// 构造函数// 成员函数private:T data;// 模板类型参数T用于定义成员变量的类型在这个例子中,MyClass是一个类模板,它有一个模板参数T。
2024-10-09 22:14:50
295
原创 C++函数模板的定义和使用方式
函数模板的定义以template关键字开始,后面跟着一个尖括号()内的模板参数列表。模板参数列表可以包含一个或多个模板参数,每个参数前面都有一个类型参数(如typename T或class T,其中T是参数名)。在这个例子中,add是一个函数模板,它接受两个相同类型的参数a和b,并返回它们的和。T是一个类型参数,它将在函数模板被实例化时由实际类型替换。
2024-10-09 22:13:28
431
原创 C++运算符重载
在C++中,运算符重载(Operator Overloading)是一种允许程序员为类或结构体自定义运算符行为的功能。这意味着你可以为自定义类型(如类或结构体)定义运算符如何作用于该类型的对象,或者定义该类型的对象与内置类型(如int、double等)之间如何使用运算符。运算符重载是通过定义一个特殊的成员函数或友元函数来实现的,这些函数的名称由operator关键字后跟要重载的运算符符号组成。
2024-10-09 21:51:57
578
原创 C++纯虚函数与抽象基类,虚函数
抽象基类是指包含至少一个纯虚函数的类。由于抽象基类不能实例化,它们通常用作接口或基类,为派生类提供一套必须实现的函数。public:// 纯虚函数// 可以有实现的虚函数public:// 派生类实现纯虚函数在这个例子中,AbstractBase是一个抽象基类,因为它包含一个纯虚函数pureVirtualFunction。ConcreteDerived类从AbstractBase继承,并实现了纯虚函数,因此可以被实例化。总结虚函数:允许在运行时根据对象的实际类型调用相应的函数实现。
2024-10-09 21:51:25
485
原创 C++虚函数机制的要点
概念:虚函数是C++中用于实现动态绑定(Dynamic Binding)的一种机制。它允许在派生类中重写基类的函数,并通过基类指针或引用调用派生类中重写的函数。定义格式:在基类中使用virtual关键字修饰成员函数,将其定义为虚函数。例如:virtual void FuncName();。
2024-10-08 19:57:47
510
原创 C++子类型关系
在C++中,子类型关系(subtype relationship)通常指的是类之间的继承关系,其中一个类(派生类或子类)继承自另一个类(基类或父类)。这种关系允许派生类复用基类的代码,并可以添加或重写基类中的成员。
2024-10-08 19:56:48
399
原创 C++虚基类
在上面的例子中,D类如果不使用虚基类,那么它的value成员将有两个不同的来源(一个来自B继承的A,另一个来自C继承的A)。然而,在D_virtual类中,由于B_virtual和C_virtual都虚继承了A类,所以A类的成员在D_virtual类中只有一个副本,从而避免了这些问题。当一个类作为虚基类被继承时,无论它在继承层次中出现多少次,其在最终的派生类中都只有一个实例。使用虚基类时需要注意的一点是,虚基类的构造函数只会被调用一次,并且是在最底层的派生类的构造函数中首先被调用的。
2024-10-08 19:56:31
636
原创 C++继承基类的数据成员与成员函数
在C++中,继承是面向对象编程的一个核心概念,它允许一个类(称为派生类或子类)继承另一个类(称为基类或父类)的属性和方法。通过继承,派生类可以复用基类的代码,同时添加新的属性和方法或重写基类的方法。
2024-10-07 19:32:42
634
原创 C++ 派生类的定义和访问权限
/ 派生类的成员变量和成员函数DerivedClassName 是派生类的名称。AccessSpecifier 是继承方式,可以是 public、protected 或 private。BaseClassName 是基类的名称。public 继承:保持基类的访问权限不变。protected 继承:将基类的 public 成员降为 protected,其他保持不变。private 继承:将基类的 public 和 protected 成员降为 private,其他保持不变。
2024-10-07 19:32:01
534
原创 C++友元函数和友元类
在C++中,友元(Friend)是一种特殊的访问权限,它允许一个函数或另一个类的成员函数访问某个类的私有(private)成员或受保护(protected)成员。这种机制打破了类的封装性,但在某些情况下,它提供了一种有效的解决方案,比如需要在一个类外部访问其私有成员,但又不想将这些成员设为公有(public)时。
2024-10-02 10:00:38
530
原创 C++ this 指针的使用
在C++中,this指针是一个特殊的指针,它指向当前对象的实例。在类的成员函数内部,this指针被隐式地使用,以访问调用该函数的对象的成员(包括成员变量和成员函数)。尽管在大多数情况下你不需要显式地使用this指针,但在某些特定情况下,它非常有用。
2024-10-01 10:40:40
435
原创 C++常数据成员与常成员函数
在C++中,常数据成员(constant data members)和常成员函数(const member functions)是两种用于提高程序安全性和清晰性的特性。它们各自有不同的用途和限制。首先,需要明确的是,C++标准并不直接支持在类中声明常数据成员(即,在类定义中直接声明为const的数据成员)。这是因为常数据成员的值必须在构造函数初始化列表中设置,而在类的定义中无法提供这样的初始化。然而,你可以通过以下几种方式在类中实现类似常数据成员的效果:使用静态常数据成员:静态常数据成员可以在类定义外部初始
2024-10-01 10:40:14
513
原创 C++静态数据成员与静态成员函数的定义与使用方式
在C++中,静态数据成员和静态成员函数是类成员的一种特殊形式,它们属于类本身而不是类的任何特定对象。这意味着静态成员在类的所有对象之间共享同一份数据或函数实现。静态数据成员在类的所有对象之间共享存储位置。它必须在类的外部进行定义(但只能在类内部声明),并且只能被定义一次。静态数据成员可以是私有的、受保护的或公有的。定义静态数据成员在类内部声明(仅声明):在类外部定义(定义并初始化):使用静态数据成员你可以通过类名加作用域解析运算符(::)来访问静态数据成员,也可以通过类的对象来访问(但通常不
2024-10-01 10:38:46
493
原创 C++构造函数与析构函数
在C++中,构造函数(Constructor)和析构函数(Destructor)是类的特殊成员函数,它们在对象的生命周期中扮演着重要的角色。
2024-09-30 19:45:57
310
原创 C++对象和对象指针的定义与使用
对象是根据类(class)的定义创建的实体。类定义了对象的属性和行为(即数据成员和成员函数)。定义类public:int x;// 数据成员void display() { // 成员函数创建对象// 创建MyClass类的一个对象obj使用对象public:int x;// 创建对象obj.x = 10;// 使用对象访问数据成员// 使用对象调用成员函数return 0;对象指针是指向对象的指针,它存储了对象的内存地址。定义对象指针。
2024-09-30 09:49:07
557
原创 C++类的定义方式、数据成员、成员函数及访问权限(public,private,protected)
C++中的类使用class关键字进行定义。类名:标识类的名称。成员变量(也称为数据成员):类中存储的数据。成员函数:类中定义的函数,可以访问类的成员变量。访问权限修饰符:public、protected、private,用于控制类成员的访问权限。
2024-09-30 09:48:00
481
原创 C++带有默认参数值的函数
在函数声明或定义时,可以为参数指定默认值。但是,需要注意的是,一旦某个参数被赋予了默认值,那么它之后的所有参数都必须有默认值。这是因为当调用函数时,编译器从左到右匹配参数,并且无法跳过带有默认值的参数来提供后面参数的值。// 声明带有默认参数的函数// 定义函数// 调用函数,提供所有参数// 调用函数,省略最后一个参数,使用默认值// 调用函数,省略后两个参数,使用默认值return 0;注意事项声明与定义:通常,在头文件中声明带有默认参数的函数,并在源文件中定义它。
2024-09-30 09:46:33
245
原创 C++内联函数
内联函数通过在函数声明或定义前加上inline关键字来指定。通常,内联函数的定义在头文件中,因为内联函数需要在每个调用点都可见其定义。a : b;注意事项编译器优化:虽然你指定了一个函数为内联函数,但编译器可能会忽略你的请求,特别是当函数体很大或者包含复杂的控制结构时。编译器会进行成本效益分析,以确定是否真正内联该函数。递归函数:内联函数不能是递归的,因为编译器无法在内联时展开无限递归。定义在头文件中:由于内联函数需要在每个调用点都可见其定义,因此它们通常定义在头文件中。
2024-09-30 09:45:58
243
原创 C++函数重载
C++中的函数重载(Function Overloading)允许在同一个作用域内定义多个具有相同名称但参数列表不同的函数。这些函数可以有不同的返回类型,但仅仅基于参数列表的不同,编译器就能够区分它们,并调用适当的函数版本。
2024-09-30 09:45:18
603
原创 数据库的关系模型、关系数据库
在数据库管理系统中,关系模型(Relational Model)和关系数据库(Relational Database)是两个核心概念,它们对于理解和设计现代数据库系统至关重要。下面我们将分别解释这两个概念。
2024-09-29 20:52:46
894
原创 数据库基础知识(数据库系统的基本概念、数据库系统的特点与结构、数据模型)
数据库系统(Database System,简称DBS)是计算机系统的基础软件,包含数据、数据库管理系统(DBMS)、数据库管理员(DBA)等核心概念。数据库系统强调数据的结构化、共享性和独立性,提供数据模型如层次、网状和关系模型,以支持数据的高效管理和维护。
2024-09-29 17:18:44
845
原创 C++递归函数
C++中的递归函数是一种特殊类型的函数,它会在自己的函数体内调用自己。递归函数通常需要有一个或多个基本情况(base case),即不会再次调用自己的情况,以避免无限递归导致程序崩溃。递归是解决许多算法问题(如排序、搜索、分治算法等)的一种优雅而强大的方法。
2024-09-29 10:48:28
392
原创 C++变量的作用域和生存周期
在C++中,变量的作用域(Scope)和生存周期(Lifetime)是两个关键概念,它们共同决定了变量在程序中的可见性和存在时间。
2024-09-29 10:47:34
633
原创 C++形式参数与实际参数,参数值的传递
形式参数是函数定义中的参数,它们用于接收调用函数时传递的实际参数的值。实际参数是调用函数时传递给函数的数据。值传递复制实参的值给形参,函数内部对形参的修改不会影响到实参。引用传递(包括指针传递)传递实参的引用(或地址)给形参,函数内部对形参的修改会影响到实参。
2024-09-28 14:32:12
379
原创 MySQL 数据库相关的基本概念
MySQL数据库是一个开源的关系型数据库管理系统(RDBMS),被广泛应用于Web开发中。以下是MySQL数据库相关的基本概念:
2024-09-28 11:33:06
1219
原创 openGauss 数据库系统的特点与结构
openGauss数据库系统是一款由华为公司基于开源PostgreSQL数据库开发的高性能、高可靠性的关系型数据库管理系统。以下是关于openGauss数据库系统的特点与结构的详细阐述:
2024-09-28 11:23:57
897
原创 openGauss 数据库系统的基本概念
openGauss数据库系统是一款由华为推出的企业级开源关系型数据库,自2020年6月30日正式开源以来,凭借其高性能、高可用、高安全性和可维护性好的特点,在数据库领域取得了显著的成果和进展。以下是openGauss数据库系统的基本概念:
2024-09-28 11:14:19
580
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人