类和对象

学习:类和对象

谁说胖子不能爱 提交于 2019-12-04 09:01:36
C++面向对象的三大特性为: 封装 、 继承 、 多态 例如:人属于人类,车属于车类.... 封装的意义: 封装是C++面向对象三大特性之一 意义: 1、 将属性和行为作为一个整体,表现生活中的事物 2、 将属性和行为加以权限控制 语法: class 类名{ 访问权限: 属性 / 行为 }; 示例1: 设计一个圆类,求圆的周长 #include<iostream> using namespace std; const double PI = 3.14; class Circle { public: int r; double calcuate() { return 2 * r * PI; } }; int main() { Circle c1; c1.r = 5; cout << c1.calcuate() << endl; system("pause"); return 0; } 来源: https://www.cnblogs.com/zpchcbd/p/11851543.html

python 属性,类方法和静态方法

不打扰是莪最后的温柔 提交于 2019-12-04 07:14:46
一. 属性 属性: 将一个方法, 伪装成一个属性, 在代码的级别上没有本质的提升, 但是让其看起来很合理. @property 属性 @属性名.setter # 设置(修改) @属性名.deleter # 在内部删除二. 类方法 @classmethod # 类方法 类方法: 通过类名调用的方法, 类方法中第一个参数约定俗称cls, python自动将类名(类空间)传给cls. 只能有类名调用(对象调用, 传给cls参数的也是该对象的所属类). 类方法的应用场景: 1. 无需对象参与. 2. 对类中的静态变量进行修改, 用类方法 3. (1)在父类中类方法得到子类的类空间, 为所欲为, (2)继承中, 父类得到子类的类空间子类类名调用父类的类方法, 将我子类的类名传给父类, 这个方法中能得到子类的任何东西, 还能修改三. 静态方法 @staticmethod 静态方法的优点: 1. 代码块, 清晰 2. 复用性1. 属性 # 属性的初识 class Food: def __init__(self,name,apple,banana): self.name = name self.__apple = apple self.__banana = banana @property # 装饰器函数,内置函数, def func(self): return "喜欢吃 %s 和 %s" %

Java类和对象

此生再无相见时 提交于 2019-12-04 04:17:14
一、类   类是封装对象的属性和行为的载体,在Java语言中对象的属性以成员变量的形式存在,而对象的方法以成员方法的形式存在。 1. 类的构造方法    构造方法是一个与类同名的方法 ,对象的创建就是通过构造方法完成的,构造方法分为有参构造方法和无参构造方法,区别就在于有没有参数。说这么多概念是不是感觉有点麻木,直接看下面的例子吧。 public class Example { public Example() { // 定义无参构造方法 System.out.println("无参构造方法"); }​public Example(String name) { // 定义有参构造方法 System.out.println("有参构造方法"); }​} 在定义构造方法时,构造方法没有返回值,且构造方法不需要void关键字进行修饰。“public”是构造方法的修饰符,“Example”是构造方法的名称。   在构造方法中可以为成员变量赋值,这样当实例化一个本类的对象时,相应的成员变量也将被初始化。 2. 类的主方法   主方法其实我们已经见过很多次了,Java编译器通过主方法来执行程序,是类的入口点,语法格式如下: public static void main(String[] args) { // ...}   “static”是指主方法是静态的,若在其中调用其它方法

C++面向对象 类和类的对象

我的未来我决定 提交于 2019-12-04 03:52:02
期末了,总结一下教材上面的知识点 第九章 9.1 类的声明 1.在声明类的成员同时要声明该成员的访问属性。 2.C++结构体与类的唯一区别:struct成员的访问属性默认为public,class成员的访问属性默认为private。 3.一般将必须对外的部分设计成公开的,不必对外的成员设计成受保护的或者是私有的。 4.类的成员函数对于同一个类的所有数据成员具有无限制的访问能力。 9.2 对象的基本空间 5.创建对象意味着给对象分配内存空间。 6.我们将对象的非静态数据成员所占用的空间总和称为对象的基本空间。 9.3 对象的自我表现 7.this的指向被锁定不能更改。 8.常量成员函数是类的成员函数,这种函数的隐含形式参数指向本对象的常量指针常量(const * const this),故在函数体内只能读取但是不能修改本对象的任何属性 9.常量对象只能调用常量成员函数。 10.将类当中所有不修改对象属性的成员函数都设计成常量成员函数是有好处的。 9.5 类模板与模板类 11.函数模板是-在源代码级,数据类型待定而操作确定的函数描述 看一个二维向量模板的例子: template <typename TYPE>class Vec2 //类模板的声明 其中TYPE是待定数据类型,或者称为 形式数据类型 12.模板成员函数在类声明体外描述时候的书写格式: template <typename

python中的类和对象

风流意气都作罢 提交于 2019-12-03 21:04:53
摘要:本文主要介绍了python中的类和对象的基础内容。由于在c++中对类和对象已经有了较为深刻的认识,所以此部分就是主要熟悉一下创建方法和使用方法。 1、类、对象的创建和简单使用 主要观察创建类的方法,然后用类创建一个对象,然后在创建的对象身上使用类中的方法: 1 class person(): 2 def Output_name(self): 3 print('Tom') 4 5 per=person() 6 per.Output_name() #Tom 在上面的例子中,类中函数的参数有一个self, 其实这个东西相当于c++中的this指针,self相当于创建的对象 ,从下面的例子中可以清楚的理解: 1 class person(): 2 def Output_name(self): 3 print('Tom') 4 print(self) 5 6 per=person() 7 print(per) 8 per.Output_name() #Tom 执行结果如下: 1 <__main__.person object at 0x000001F03FBA65C0> 2 Tom 3 <__main__.person object at 0x000001F03FBA65C0> 2、在类外对对象的属性进行设定 和c++有很大的不同,python可以直接在类外对对象进行属性的设定: 1

类和对象

匿名 (未验证) 提交于 2019-12-03 00:36:02
在c++的编程中最重要的就是类,通常编写一个关于类的程序,我们都把它分为三个部分: 关于类的原始声明,这是一个单独的文件, 且在这个文件中,只会涉及到类的函数声明与类的数据结构成员 此处需要使用之前提到过的一些技巧: #ifndef class #define class Class Definitions #endif 来避免重复包含头文件 在第二份文件中则是关于每个类函数的具体实现部分的内容,这样将每个函数的实现 与其定义部分分离,便于维护和修改。 关于这个类的实现的测试文件。 一般一个基本的类的结构为: class CLASSNAME{ private: datas ; public: functions ; }; private中存放每个类对象的数据,而数据的修改与访问则是完全通过函数进行的。 注意:(1)在类外定义类函数需要加上类作用域运算符。 (2)在类中定义的函数则是自动升为内联函数。 (3)可以在函数前加上inline使得函数为内联的形式。 一些小的注意要点: (1)构造函数不需要返回的声明,函数名与类名相同; 注意: 如果在构造函数上使用默认参数,则声明与实现上不能同时写默认参数,否则编译器 会报错。 (2)析构函数则是用来消除类对象所占有内存的一种巧妙的方式。 (3)this 指针指向的是类对象自己,在需要比较两个相同类时往往需要借助此this指针。 (4

类和对象

匿名 (未验证) 提交于 2019-12-03 00:05:01
类和对象 面向对象概述 所谓对象就是某种事物的抽象(功能),抽象包括数据抽象和过程抽象两个方面,数据抽象就是定义对象的属性;过程抽象就是定义对象的操作(行为)。 面向对象的三(四)大特征:封装,继承,多态,(抽象)。 封装 :把描述对象属性的变量及实现对象功能的方法结合起来,定义一个程序单位,并保证外界不能任意 更改内部的属性,不能任意调动内部的方法接口。 继承 :大大增强了代码的可复用性,提高了软件的开发效率,为程序的修改扩充提供了材料。Java 不支持多继 承(菱形继承方式),为了弥补 Java 不支持继承带来的子类不能享用多个父类的成员缺憾,我们在后面的学习中会 引入“接口”这个概念。 多态 :同一个方法名,根据被调对象的不同,实现了不同的行为。 主要分成静多态(方法的重载)和动多态(继承,重写,向上造型)。 抽象 :使用了关键词abstract声明的类叫作“抽象类”。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。“抽象方法”,属于一种不完整的方法,只含有一个声明,没有方法主体。 类和对象概述 1. 类的概念 类是一种 新的数据类型 ,类定义数据类型的属性(变量,字段),行为(方法)。对象是基于类的具体实现,又称为类的实例。 类是一个抽象概念 , 对象是类的具体实现 类所定义的对象是不唯一的,依需求(需要)而定 例: 定义一个类,人

Java中的类和对象

依然范特西╮ 提交于 2019-12-03 00:04:42
类:真正的意义就是在抽象描述事物,类是分析具体的事物定义出来的 事物:具体的特点(变量)+功能(方法) 对象:表示现实中该类事物的个体,用new创建出来的。 通过new的方式可以创建该事物的具体对象。 解释: 真正创建了一辆车的对象,用创建的这量车的变量去调用车对象的具体功能 类名 对象名 = new 类名(); 例如: Car c = new Car () 栈用来运行方法的, 堆用来存储容器用的(数组、对象) 包中包含类 封装的三个特征:封装、集成、多态。 方法和类都属于封装。 来源: https://www.cnblogs.com/logolbq/p/11768412.html

自学QT之QApplication类和&lt;qapplication.h&gt;头文件

匿名 (未验证) 提交于 2019-12-03 00:03:02
它包含主事件循环,在其中来自窗口系统和其它资源的所有事件被处理和调度。它也处理应用程序的初始化和结束,并且提供对话管理。它也处理绝大多数系统范围和应用程序范围的设置。 对于任何一个使用Qt的图形用户界面应用程序,都正好存在一个QApplication对象,而不论这个应用程序在同一时间内是不是有0、1、2或更多个窗口。 QApplication对象是可以通过全局变量qApp访问。它的负责的主要范围有: 应用程序排演实例包含了一个QApplication通常用法的典型完整的main()。 因为QApplication对象做了如此多的初始化,它必须在所有与用户界面相关的其它类被创建之前被创建。 因为它也处理命令行参数,在应用程序中对argv解释和修改之前创建它通常是一个好主意。(注意,也对于X11,setMainWidget()可以根据-geometry选项来改变主窗口部件。为了保持这个功能,你必须在setMainWidget()和它的任何重载之前设置你的默认。) 转载于:https://my.oschina.net/u/2505464/blog/542368 来源:51CTO 作者: chizhou4731 链接:https://blog.csdn.net/chizhou4731/article/details/100732236

C++的类和对象

匿名 (未验证) 提交于 2019-12-02 23:59:01
前言:类和对象在C++等面向对象的编程语言是非常重要的概念。 一,什么是对象 语法(对象创建):类名 对象名; 1 #include<iostream> 2 using namespace std; 3 class box 4 { 5 int width,length; 6 }; 7 int main() 8 { 9 box obj; 10 } 二,什么是类 类的声明(语法): class Box; 类的性质 1,类的三种访问限定符 protected,private,public  1> protected: 1,类有点类似与C中的结构体,但结构体的默认访问属性为公有,类的默认访问属性为私有。 2 .,对象是一个整体,类中的函数调用无需传参 三,类与对象的关系 类是对象 的抽象,对象是类 的实体    1,类和对象是一种由 面向过程 转换为 面向对象 的重要设计思想。 2,对象是一个整体,具有所属类的所有属性。 来源:博客园 作者: Grant_Gusting 链接:https://www.cnblogs.com/zxhy123/p/11484035.html