04_类和对象

eokey eokey     2023-05-05     618

关键词:

一:类和对象基本概念

1.1 基本概念

1)类、对象、成员变量、成员函数
2)面向对象三大概念
封装、继承、多态
3)编程实践
类的定义和对象的定义,对象的使用
求圆形的面积

1.2 类的封装

1) 封装(Encapsulation)
  A)封装,是面向对象程序设计最基本的特性。把数据(属性)和函数(操作)合成一个整体,这在计算机世界中是用类与对象实现的。
  B)封装,把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
  备注:有 2 层含义(把属性和方法进行封装 对属性和方法进行访问控制)
C++中类的封装
  成员变量, C++中用于表示类属性的变量
  成员函数, C++中用于表示类行为的函数

2)类成员的访问控制
在 C++中可以给成员变量和成员函数定义访问级别
  Public 修饰成员变量和成员函数可以在类的内部和类的外部被访问
  Private 修饰成员变量和成员函数只能在类的内部被访问

//类是把属性和方法封装 同时对信息进行访问控制
//类的内部,类的外部
//我们抽象了一个类,用类去定义对象
//类是一个数据类型,类是抽象的
//对象是一个具体的变量。。占用内存空间。
class Circle
private:
  int a;
public:
  double r;
  double s;
public:
  double getR()
  
    a++;
    return r;
  
  void setR(double val)
  
    r = val;
  
public:
  double getS() //增加功能时,是在修改类, 修改类中的属性或者是方法
  
    s = 3.14f*r*r;
    return s;
  

;
3) struct 和 class 关键字区别
  在用 struct 定义类时,所有成员的默认属性为 public
  在用 class 定义类时,所有成员的默认属性为 private

1.3  对象的构造和析构

前言
  创建一个对象时,常常需要作某些初始化的工作,例如对数据成员赋初值。 注意,类的数据成员是不能在声明类时初始化的。
  为了解决这个问题, C++编译器提供了构造函数(constructor)来处理对象的初始化。 构造函数是一种特殊的成员函数,与其他成员函数不同,不需要用户来调用它,而是在建立对象时自动执行。

  

java基础04_面向对象

...态抽象4、类:面向对象的最小单元,基本单位(抽象)类和对象的关系:多个对象---抽象-->类--实例化-->多个对象类:一组相关的属性和行为的集合由成员变 查看详情

8类和对象

对象=类()定义类classCar:defstart(self):print("启动") c1=Car()c1.start()类内所有方法参数()内,必须是self,self指向创建实例本身def__init__(self):#方法在创建一个对象时默认被调用(初始化对象)def__str__(self):return(‘字符串‘)#方法在输... 查看详情

java_类和方法笔记(代码片段)

...对象(OOP)Java_面向对象分析方法分析问题的思路和步骤Java_类和对象Java_类对象Java_类的语法格式Java_对象Java_类的访问机制Java_堆和栈详解Java_匿名对象Java_类的属性Java_变量详解Java_成员变量和局部变量区别Java_类成员-属性Java_类成... 查看详情

python基础——类和对象(代码片段)

文章目录对象=属性+方法self是什么公有和私有继承调用未绑定的父类方法使用super函数多重继承组合构造和析构_\\_init_\\_(self[,...])构造方法_\\_new_\\_(cls[,...])方法_\\_del_\\_(self)析构方法什么是绑定对象=属性+方法我们前... 查看详情

python基础——类和对象(代码片段)

文章目录对象=属性+方法self是什么公有和私有继承调用未绑定的父类方法使用super函数多重继承组合构造和析构__init__(self[,...])构造方法__new__(cls[,...])方法__del__(self)析构方法什么是绑定一些相关的BIF对象=属性+方法我... 查看详情

013_面向对象_抽象类和接口

1.抽象类(abstract)  (1)特点    ①方法只有声明没有实现时,该方法就是抽象方法,抽象方法必须定义到抽象类中,该类也必须被abstract修饰    ②抽象类不可以被实例化,因为调用抽象方法没有意义。    ③抽象... 查看详情

面向对象新式类和旧式类的区别(代码片段)

旧式类:classjiushi():def__init__(self,a1):self.a=a1classjiushi_son(jiushi):def__init__(self,a1):jiushi.__init__(self,a1)  新式类:(多继承时)classxinshi(object):def__init__(self,a1):self.a=a1classxinshi 查看详情

回顾一下类和对象以及继承关系

#coding:utf-8importtracebackclassA(object):__static_field=‘A_privatestaticfield‘public_static_field=‘A_public_static_field‘start_urls="A_class_start_urls"_one_line="A_one_line"def__init__(self):(filen 查看详情

类和对象(代码片段)

class类名:?特征?技能定义类名的规范:驼峰命名法#定义老男孩学生类classOldboyStudent:#类名指向的是类的内存地址#学生相同的特征,也称为属性school='oldboy'#学生相同的技能#注意:在类内部定义函数,会默认有一个参数selfdeflea... 查看详情

c++_类和对象(代码片段)

文章目录c++_类和对象类定义类定义对象对象成员的访问类成员的访问属性结构体和类的区别类的基本使用范例c++_类和对象类1.什么是类?类是一种用户定义的引用数据类型,也称类类型。每个类包含数据说明和一... 查看详情

class类和构造函数在使用new创建实例对象时候都做了什么?

new关键字配合普通构造函数:new关键字配合普通构造函数的时候主要有以下步骤:①创建一个空对象,这个空对象就是下面最终的实例对象②将这个空对象的__proto__属性和构造函数的prototype属性建立联系,也就是__proto__===prototype③将... 查看详情

类的加载顺序类和对象的命名空间(代码片段)

类的加载顺序类和类一个缩进内的代码在py文件从上到下解释的时候就已经被执行了类中的代码永远是从上到下依次执行的练习:写一个类,能够自动的统计这个类有多少个对象classA:Count=0def__init__(self,name):self.name=nameA.Count+=1a=A(... 查看详情

类和对象的增删改查(代码片段)

最近写一个简单的python脚本,延迟了半个月的进度 接下来学习面向对象了#类的增删改查classDog:def__init__(self,name,age,color):self.name=nameself.age=ageself.color=colordefjiao(self):print("%s汪汪叫"%self.name)defeat(self,food):print("%s喜欢 查看详情

匿名类和匿名对象

https://blog.csdn.net/qq_39728125/article/details/77119736  匿名类和匿名对象2017年08月12日16:19:40 qq_39728125 阅读数:628更多个人分类: java基础 版权声明:本文为博主原创文章,未经博主允许不得转载。https://blog.csdn.net/ 查看详情

python学习之旅--类和对象(代码片段)

1,类和对象目的:知道什么是类,什么是对象,以及他们之间的关系类:抽象的概念,具有一类共性事物(属性,方法)的统称对象:类的一个实例,具体的属性,具体的行为关系:一对多的关系,一个类可以创建出无数个对象2,定义类目的:可以通... 查看详情

lesson04:类和对象,类的成员变量成员方法构造方法

1类(class)java是面向对象程序设计(OPP),类是构造对象的模板或者蓝图。由类构造(construst)对象的过程称为创建类的实例(instance)。类的构成:1package包名2class类名extends父类名implements接口名{3成员变量;4构造方法;5成员... 查看详情

java练习sdut-3339_计算长方形的周长和面积(类和对象)

计算长方形的周长和面积(类和对象)TimeLimit:1000msMemoryLimit:65536KiBProblemDescription设计一个长方形类Rect,计算长方形的周长与面积。成员变量:整型、私有的数据成员length(长)、width(宽);构造方法如下:(1)Rect(intlength)——1个整... 查看详情

python面向对象基础(代码片段)

目录1面向对象2类和对象2.1理解类和对象2.1.1类2.1.2对象2.2面向对象实现方法2.2.1定义类2.2.2创建对象2.2.3self3添加和获取对象属性3.1类外面添加对象属性3.2类外面获取对象属性3.3类里面获取对象属性4魔法方法4.1__init__()4.1.1体验__init... 查看详情