学习c#第26天 面向对象基础之类与对象

1.类 1.什么是类? 俗话说,“物以类聚,人以群分”。意思是同类的东西经常聚在一起,志同道合 的人相聚成群。前者说物,后者说人。这里以物来进行举例说明[见图]: 水果超市,所有同类的水果摆放在一起,然后放个标签,说明这是什么水果。 这一类是苹果,那一类是香蕉....... 现实生活中,经常遇到分“类”的问题,比如水果超市要分不同种类来摆放水果。

2.那么在我们的程序中,“类”又是什么东西那??? 现实生活中,“这一类是苹果,那一类香蕉”,你是如何分辨的?? 答:根据不同水果的特征进行分类,比如水果的颜色,外形,口感,重量等等特 征进行分类。

3.颜色红色,外形偏圆形,口感甜的居多,重量200克左右 === 苹果。 这一类就是苹果,苹果在水果超市里就放到了一起。

4.在我们的程序中,描述某个具体的物体(比如苹果)特征,就是类(class)。 我们学习面向对象,其中最关键的一个概念“类”,就是用于描述事物特征的。

5.2.类的语法:

[访问修饰符]class 类名

{

类的描述信息

访问修饰符:用于描述这个类的访问权限,现在可以不写,有默认值;

class:关键字,用于声明一个类,和之前枚举的enum,结构体的struct作 用是一样的。

类的描述信息:描述这类事物的特征(字段,属性,方法);

2.对象 1.什么是对象? 一个具体的个体,就是一个对象。 注意:苹果,汽车,房子,猕猴桃,猴子这些都不是对象,这些是类,一类事物。

对象一定要是“一个具体的个体”: 比如:我桌子上这台的雷神牌笔记本,我右手握着的这个鼠标,我头上戴着的这 个录音耳麦,这些才是对象。因为它们是“一个具体的个体”。

那么在我们的程序中,对象又是什么那? 通过类实例化出来的就是对象。

2.对象的语法

类名 对象名 = new 类名();

 Apple a1 = new Apple( );

类名:描述这个对象的类,可以是我们自己定义的,也可以是系统提供的; 对象名:我们要通过这个类创建出来的一个具体的个体的名称;

new:关键字,实例化的意思,

new 类名() 就是实例化一个类的对象,通过 这个类创建出一个具体的对象出来。

3.类与对象的关系 类用于描述一类事物的信息; 对象是这个类中的一个具体的个体。

4.字段 1.什么是字段? 字段不是新东西,字段就是我们之前一直在用的变量。变量在面向对象的类中就 叫做字段

2.字段的作用 字段的作用和变量的是一样一样一样的。 都是用于存储一些具体的信息。

3.字段的语法

public 数据类型 字段名;

public:访问修饰符;

数据类型:就是数据类型,比如 int,string,float,double;

字段名:说白了就是变量名,在面向对象编程的类中,变量就叫字段。

4.对象使用方法

1.实例化对象 类名 对象名 =new 类名();

2.字段的赋值与取值

赋值:对象名.字段名 = 值; 取值:对象名.字段

类:

使用:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/832621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP 框架安全:ThinkPHP 序列 漏洞测试.

什么是 ThinkPHP 框架. ThinkPHP 是一个流行的国内 PHP 框架,它提供了一套完整的安全措施来帮助开发者构建安全可靠的 web 应用程序。ThinkPHP 本身不断更新和改进,以应对新的安全威胁和漏洞。 ThinkPHP 框架的安全特性: (1) 输入过滤和验证…

PCB机打孔机程序(一)

/*PCB机板增加读写FM24C64函数PAST 2018 1 6 21:30 CODE 28435*/ /*程序编辑按XX-YY-快速显示数据 测试完成 程序编号 程序行号 界面重新编排 参数设置 系统设置XY分子分母 光标位置选择 选中数字闪烁 进入手动操作 按返回退出 按空格键 数据清除L4346 13775061792*****/ …

【go项目01_学习记录05】

学习记录 1 依赖管理 Go Modules1.1 弃用 $GOPATH1.2 Go Modules 日常使用1.2.1 初始化生成go.mod文件1.2.2 Go Proxy代理1.2.3 go.mod文件查看1.2.4 go.sum文件查看1.2.5 indirect 含义1.2.6 go mod tidy 命令1.2.7 清空 Go Modules 缓存1.2.8 下载依赖1.2.9 所有 Go Modules …

[qnx] 通过zcu104 SD卡更新qnx镜像的步骤

0. 概述 本文演示如果给Xlinx zcu104开发板刷入自定义的qnx镜像 1.将拨码开关设置为SD卡启动 如下图所示,将1拨到On,2,3,4拨到Off,即为通过SD启动。 2.准备SD卡中的内容 首先需要将SD格式化为FAT32的(如果已经是FAT32格式,则…

网络安全之OSI七层模型详解

OSI七层模型分为控制层(前三层)和数据层(后四层)。从第七层到一层为; 应用层(7)接收数据 表示层(6)将数据翻译为机器语言 会话层(5)建立虚连接…

代码随想录leetcode200题之字符串

目录 1 介绍2 训练3 参考 1 介绍 本博客用来记录代码随想录leetcode200题中字符串部分的题目。 2 训练 题目1&#xff1a;344. 反转字符串 C代码如下&#xff0c; class Solution { public:void reverseString(vector<char>& s) {int i 0, j s.size() - 1;whi…

C++证道之路第十八章探讨C++新标准

一、复习前面介绍过的C11新功能 1、新类型 C11新增了类型long long 和unsigned long long 新增了类型char16_t 和char32_t 2、统一的初始化 C11扩大了用大括号括起的列表&#xff08;初始化列表&#xff09;的使用范围&#xff0c;使其可以用于所有内置类型和用户定义的类…

Spring开发利器:深入解析Apache Commons Lang的BooleanUtils类

1. 概述 Spring框架中并没有直接提供名为BooleanUtils的类。然而&#xff0c;Apache Commons Lang库中有一个非常有用的BooleanUtils类&#xff0c;它提供了一系列静态方法来简化对布尔值的操作。虽然Spring本身没有提供这样的工具类&#xff0c;但在Spring项目中&#xff0c;…

可编程 IP 新星 Story Protocol 何以引领链上文艺复兴浪潮?

当前&#xff0c;随着 Web3 行业发展进入全新阶段&#xff0c;与生成式人工智能&#xff08;AIGC&#xff09;技术融合正在创造潜力新星项目。也是目前的互联网生态下&#xff0c;任何普通民众都有权利创作高质量的音乐、艺术、散文和视频内容&#xff0c;带来了用户生成内容&a…

算法(C++

题目&#xff1a;螺旋矩阵&#xff08;59. 螺旋矩阵 II - 力扣&#xff08;LeetCode&#xff09;&#xff09; 给你一个正整数 n &#xff0c;生成一个包含 1 到 n2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1&#xff1a; 输入&am…

Vue进阶之Vue项目实战(二)

Vue项目实战 构建基础框架路由 项目&#xff08; v1.0,base-app-layer&#xff09;导航 router物料编排选型 插件化插件化平时写代码场景 配置器开发 构建基础框架 路由 路由分类&#xff1a; memoryHistory&#xff1a;内存路由&#xff0c;路由信息记录在内存中&#xff0…

解决github的remote rejected|git存储库的推送保护

前言 git存储库的推送保护。当你试图推送代码到GitHub仓库时&#xff0c;由于存在与主分支&#xff08;master&#xff09;相关的仓库规则违规行为&#xff0c;推送会被拒绝了。这种保护机制帮助确保只有经过授权和符合规定的代码才能被合并到主分支&#xff0c;从而保护了主分…

Unreal Engine插件打包技巧

打开UE工程&#xff0c;点击编辑&#xff0c;选择插件&#xff0c;点击"打包"按钮&#xff0c;选择输出目录UE4.26版本打包提示需要VS2017问题解决 1&#xff09;用记事本打开文件【UE4对应版本安装目录\Epic Games\UE_4.26\Engine\Build\BatchFiles\RunUAT.bat】 2&…

Android Studio之View和ViewGroup

View是Android的基本视图&#xff0c;所有控件和布局都是由View类直接或间接派生而来的。故而View类的基 本属性和方法是各控件和布局通用的。 下面是视图在XML布局文件中常用的属性定义说明&#xff1a;id&#xff1a;指定该视图的编号。 layout_width&#xff1a;指定该视图的…

leetcode55-Jump Game

题目 给你一个非负整数数组 nums &#xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标&#xff0c;如果可以&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1&#xff1a…

Linux网络部分——DNS域名解析服务

目录 1. 域名结构 2. 系统根据域名查找IP地址的过程 3.DNS域名解析方式 4.DNS域名解析的工作原理【☆】 5.域名解析查询方式 6.搭建主从DNS域名服务器 ①初始化操作主服务器和从服务器&#xff0c;安装BIND软件 ②修改主服务器的主配置文件、区域配置文件、区域数…

pyside6的调色板QPalette的简单应用

使用调色板需要先导入:from PySide6.QtGui import QPalette 调色板QPalette的源代码&#xff1a; class QPalette(Shiboken.Object):class ColorGroup(enum.Enum):Active : QPalette.ColorGroup ... # 0x0Normal : QPalette.ColorGrou…

鸿蒙内核源码分析(消息队列篇) | 进程间如何异步传递大数据

基本概念 队列又称消息队列&#xff0c;是一种常用于任务间通信的数据结构。队列接收来自任务或中断的不固定长度消息&#xff0c;并根据不同的接口确定传递的消息是否存放在队列空间中。 任务能够从队列里面读取消息&#xff0c;当队列中的消息为空时&#xff0c;挂起读取任务…

文献速递:深度学习医学影像心脏疾病检测与诊断--从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测

Title 题目 Deep Learning Coronary Artery Calcium Scores from SPECT/CT Attenuation Maps Improve Prediction of Major Adverse Cardiac Events 从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测 01 文献速递介绍 低剂量非门控CT衰减校正&am…

【ARM 嵌入式 C 字符串系列 23.7 -- C 实现函数 isdigit 和 isxdigit】

请阅读【嵌入式开发学习必备专栏 】 文章目录 isdigit 和 isxdigit C代码实现实现 isdigit实现 isxdigit使用示例 isdigit 和 isxdigit C代码实现 在C语言中&#xff0c;isdigit和isxdigit函数用于检查一个字符是否分别为十进制数字或十六进制数字。以下是这两个函数的简单实现…