![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java、C/C++
文章平均质量分 71
编程语言
小宝是狗子啊
这个作者很懒,什么都没留下…
展开
-
C++之函数模板与类模板
目录函数模板的引入其隐式转换函数模板重载类模板引入定做函数模板的引入重载:C++入门之构造函数,通过参数的不同来调用不同的函数体int& max(int& a, int& b){ return (a < b)? b : a;}double& max(double& a, double& b){ return (a < b)? b : a;}float& max(float&原创 2021-05-31 20:57:57 · 398 阅读 · 3 评论 -
C++之抽象类与抽象类界面(高级编程)
纯虚函数看以下例子,对于#include <iostream>#include <string.h>#include <unistd.h>using namespace std;class Human {private: int a;public: virtual void eating(void) = 0; virtual void wearing(void) = 0; virtual void driving(void) = 0;原创 2021-05-29 21:14:59 · 296 阅读 · 1 评论 -
C++之多态与类型转换
多态先看以下例子#include <iostream>#include <string.h>#include <unistd.h>using namespace std;class Human {public: void eating(void) { cout<<"use hand to eat"<<endl; }};class Englishman : public Human {public: void ea原创 2021-05-29 15:26:16 · 476 阅读 · 1 评论 -
C++之继承及访问权限
目录论述继承protected权限访问控制权限继承覆写other多重继承再论构造函数论述继承这里直接举例来理解,其中Son继承Father的内容,对于Son我们称为派生类,也俗称子类,对于Father我们称为基类,也俗称父类,可以看到Son是以public的权限继承基类的,如果不写public的话,默认是以private的方式去继承基类#include <iostream>#include <string.h>#include <原创 2021-05-25 21:46:58 · 1409 阅读 · 1 评论 -
C++之操作符重载
目录静态友员重载操作符重载+重载++重载<<类中重载先介绍一下静态与友员静态对于静态变量与C相似,在C++中下面举例一个例子,利用静态成员计算对象创建的个数,在类中定义静态变量成员属于类,而不会属于某个创建的对象,类的静态成员变量需要在类外独立分配内存空间,因此"int Person::cnt = 0;"定义个初始化是需要的,例子中定义为私有变量,因为需要设置个接口,同时也设置为静态函数,只类所拥有,对于静态函数只能访问静态成员,不能访问其他成员,例如na原创 2021-05-24 20:20:26 · 337 阅读 · 1 评论 -
C++入门之构造函数
目录重载与引用构造函数实例化对象析构函数拷贝函数other重载与引用重载,即函数名相同,调用不同的函数体#include <iostream>using namespace std;int add(int a, int b){ cout<<"add int+int"<<endl; return a+b;}#if 0 double add(int a, int b) { cout<<"add int+原创 2021-05-23 21:44:28 · 285 阅读 · 5 评论 -
C++入门之程序结构
目录类的引入与访问控制权限this程序结构namespaceusingcout类的引入与访问控制在C语言中可以用struct来类比一个对象,但是struct比较局限,不能像C++可以有自己的成员函数并且可以访问内部成员,在C++中用class来定义一个类,因此struct和class的区别就在于struct不可以含有成员函数而C++可以,对于C++中的struct和class的主要区别在于默认的存取权限不同,struct默认是public,而class默认是privat.原创 2021-05-23 16:31:35 · 312 阅读 · 9 评论 -
双向链表DEMO
定义定义一个普通双向链表结构体,双向链表比单向链表多一个pre指针用来指向上一个节点typedef struct NAME{ char *name; struct NAME *pre; struct NAME *next;}T_Name, *PT_Name;static PT_Name g_ptNameHead;DEMO在main函数中实现一个菜单,可以列出节点、添加节点、删除节点和退出int main(int argc, char **argv){ char c.原创 2021-04-12 19:34:52 · 151 阅读 · 0 评论 -
Java抽象方法和抽象类
一、抽象类java中可以定义没有方法体的方法,该方法由子类来具体实现该没有方法体的方法我们称之为抽象方法,含有抽象方法的类我们称之为抽象类抽象类的意义就在于:为子类提供统一的规范的模板,子类必须实现相关的抽象方法特点:定义中含有抽象方法的类叫做抽象类抽象类用abstract来修饰抽象类代表一种抽象的对象类型抽象类不能实例化抽象类中可以有具体方法,可以没有抽象方法二、抽象方法只有方法头没有方法体的方法称为抽象方法抽象方法用abstract来修饰抽象方法代表一种不确定的操作或行为原创 2021-01-29 22:18:56 · 242 阅读 · 0 评论 -
Java继承之定义与运用
一、java继承的概念及用法(面向对象)00P三大特性:封装 继承 多态生活中,继承的概念随处可见继承需要符合的关系:is-a;父类更通用更抽象、子类更特殊更具体继承的概念和实现继承背后的思想就是基于已存在的类来构建新类当从已存在类继承时,就重用了它的方法和属性,还可以添加新的方法和属性来定制新类以应对需求约定:从其他类导出的类叫做子类。被导出的类叫做父类在java中,除了Object类之外,所有类都是子类,都只有唯一的父类继承在00P中国不可或缺创建一个类时,总是在继承继承的意义原创 2021-01-29 21:38:04 · 108 阅读 · 0 评论 -
Java封装之包
一、打包的意义标准java库是由一系列包组成,包括java.lang java.util java.net等等标准java包就是层次型包结构,就如同硬盘上嵌套的子目录一样,我们可以使用嵌套层次结构来组织包java的包是为了更好地规划代码,防止命名冲突和混乱。所以java出现了打包机制当把类组织起来放进一个包内之时,也就给包中的成员赋予了相互访问的权限,您就拥有了该包内的程序代码包访问权限吧类聚集在一个包中这一做法提供了意义和理二、Package声明包java程序猿都可以编写属于自己的ja原创 2021-01-29 21:06:26 · 167 阅读 · 0 评论 -
Java封装之this和static关键字
一、this关键字特点:在类的方法中,使用this关键字代表的是调用此方法的对象的引用this可以看做是一个变量,它的值是当前对象的引用使用this可以处理方法中的成员变了和形参同名的问题当在方法内需要用到调用到该方法的对象时,就可以用this在类的构造方法中可以调用this([参数列表])来调用该类的指定构造方法二、this DEMOclass Student{ private int age; String name; double score; Student()原创 2021-01-28 23:27:50 · 96 阅读 · 0 评论 -
Java封装之构造方法
一、类的构造方法的概念和作用构造方法负责对象初始化工作,对对象的属性赋合适的初始值创建对象时,其类的构造方法确保在用户操作对象之前,系统保证初始化的进行二、构造方法的语法规则构造方法名与类名一致没有返回类型方式实现主要为字段赋初值三、构造方法的调用构造方法的调用很特别:new操作符(实例化对象的时候,自动被调用)java系统保证每个类都有构造方法四、UML类图Unified Modeling Language(UML)又称统一建模语言或标准建模语言类的命令尽量应用领域中原创 2021-01-27 22:25:49 · 205 阅读 · 0 评论 -
Java封装之访问修饰符
一、信息隐藏信息隐藏是00P最重要的功能之一,也是使用访问修饰符的原因信息隐藏的原因包括:对模块的任何实现细节所作的更改不会影响使用该模块的代码 防止用户意外修改数据使模块易于维护和使用(就是电脑配件)二、访问修饰符访问修饰符:private、protected、public、默认(什么都没写就是默认的属性)public:该类或非该类均可以访问private:只有该类可以访问protected:该类及其子类的成员可以访问,同一个包中的类也可以访问默认:同一个包中的类可以访问原创 2021-01-27 22:10:20 · 168 阅读 · 0 评论