1、C#中的访问修饰符:

a) public 【公共的】访问不受到任何限制,级别最高。一般用于修饰方法,提供给其他类调用。

b) private 【私有的】只有类的内部可以使用,一般用于修饰字段,保证数据的安全性。

注:如果在成员定义之前没有指定访问修饰符,默认为internal,可理解为只能在本项目中访问。

2、C#中的this关键字:

可以看做是当前类的实例(对象),可以调用当前类的所有成员变量(字段)和方法。

This——this调用的是成员变量。当名字相同时,使用this可以获得当前对象(成员变量)。

3、属性

a) C#中使用属性对字段进行封装:使用get和set访问器。

相当于使用get\set方法:

private string name;

public string GetName(){

return name;

}

public void SetName(string name){

this.name = name; }

注:(1)Get方法有返回值类型没有参数;(2)Set方法没有返回值有参数;(3)this表示当前类的对象。

b) 对字段的使用:

1、创建对象

如:Student stu=new Student();

2、使用Set方法设置字段值

stu.SetName("张三");

3、使用变量接收调用get方法得到的值

string name=stu.GetName();

4、使用

Console.WriteLine(name);

5、停留

Console.ReadLine();

c) C#中的属性:在C#中私有字段通过get|set访问器进行访问实现,这种结合了字段和方法的实现方式叫做属性。

  • 属性的语法:

private string _name;

public string Name

{

get{ return _name; }

set{ _name=value; }

}

注:自己的私有字段不给别人用,但是提供了可以让别人访问的公开方法,自己的方法可以调用自己的字段。定义类中的一个属性时,属性的数据类型必须和它所访问的字段类型一致。

  • 对字段的使用:

1、创建对象:

如:Student stu=new Student();

2、给属性赋值

stu.Name="zhangsan";

3、用变量接收得到的属性值

string name=stu.Name;

4、使用

Console.WriteLine("name="+name);

5、停留

Console.ReadLine();

  • 属性的作用:

控制私有字段的可访问性,保护内部数据的安全 。

  1. 属性的3种访问类型

    1. 只读属性——只包含get访问器
    2. 只写属性——只包含set访问器
    3. 读写属性——只包含get和set访问器

d) 封装字段:在C#中将类中的字段、属性绑到一起,使用属性对字段进行封装。

  1. 封装——封装是面向对象的三大特性之一。
  2. 好处——避免非法数据的访问,保证数据完整性。

*****************************************************************

类的成员——字段:数据|属性:读写状态|方法:操作行为

*****************************************************************

4、C#中的引用传递和值传递

a) 值传递

  1. 方法的定义:

访问修饰符   返回值类型  方法名(数据类型 值1,数据类型 值2.。。。)

{

//方法体

}

  1. 值传递参数的调用:对象名.方法名(值1,值2.。。。);

注:值传递只在方法中改变,却不返回改变,参数仍然是原来的值。

b) 引用传递

  1. 方法的定义:

访问修饰符   返回值类型  方法名(ref 数据类型 值1,ref 数据类型 值2.。。。)

{

//方法体

}

  1. 引用传递参数的调用:

对象名.方法名(ref 值1,ref 值2.。。。);

  1. 调用的注意事项:

    1. 定义和调用之前都需要加上ref
    2. 作为参数的变量必须声明和赋值
    3. 希望保留参数更改的时候使用

c) 比较值传递和引用传递——3.4.4

  • 值传递——不能对原始数据进行修改

因:值传递是将变量的值复制一份给方法,使得方法的形参和实参的值相同,在调用的方法中修改形参也只是对实参复制品的数据做更新,并没有真正改变实参的值。

  • 引用传递——对原始数据进行修改并保留

因:直接将数据引用,使得调用方法直接对引用对象进行更改,会影响实参原来的值。

转载于:https://www.cnblogs.com/suola/p/11344126.html

第三章 使用属性升级MyBank相关推荐

  1. 使用属性升级MyBank >> 掌握自定义方法的定义及调用 1214

    使用属性升级MyBank >> 掌握自定义方法的定义及调用

  2. 学习日报 1026 使用属性升级MyBank

    学习日报 1026 使用属性升级MyBank 访问修饰符 理解访问修饰符 公开的与私有的 任何对象都会有公开的一面 任何对象也会有私有的一面 餐厅的大厅与后厨 大厅是公开的,食客随意走动 后厨是私有的 ...

  3. 使用属性升级MyBank

    1.public访问修饰符的成员可以被其他的类访问,private访问修饰符修饰的成员只能在本类中被访问 2.this关键字代表的是当前的对象.在类的内部,可以用this关键字访问它的成员 3.C#属 ...

  4. 第三章——字体属性,字号、字体、字体粗细、字体样式、字体连写

    文章目录 3.1 常见字体系列 3.2 字体系列/字体类型 3.3 字体大小 3.5 字体粗细 3.6 文字样式 3.7 字体复合属性 字体属性总结 属性 font-size 字号 单位为px像素,一 ...

  5. 【NET CORE微服务一条龙应用】第三章 认证授权与动态权限配置

    [NET CORE微服务一条龙应用]第三章 认证授权与动态权限配置 介绍 系列目录:[NET CORE微服务一条龙应用]开始篇与目录 在微服务的应用中,统一的认证授权是必不可少的组件,本文将介绍微服务 ...

  6. 【正点原子Linux连载】第三章 RV1126开发环境搭建 摘自【正点原子】ATK-DLRV1126系统开发手册

    1)实验平台:正点原子RV1126 Linux开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692176265749 3)全套实验源码+手册+视频 ...

  7. 【软件体系结构】考点总结 第三章 软件体系结构风格 XJU

    软件体系结构 第三章 软件体系结构风格 前言   本文为XJU本科期间博主根据 <软件体系结构原理.方法与实践>第二版所作的期末考点总结,因为是课堂重点总结,所以有些重要知识点没有涵盖还请 ...

  8. 数据库系统概念笔记——第三章:SQL

    文章目录 第三章:SQL 3.2 SQL数据定义 3.2.1 基本类型 3.2.2 基本模式定义 3.3 SQL查询的基本结构 3.3.1 单关系查询 3.3.2 多关系查询 3.3.3 自然连接 3 ...

  9. 信息技术导论 第三章 移动互联网技术 笔记

    第三章   移动互联网技术 3.1 移动互联网概述 3.1.1   移动互联网的基本概念 移动互联网是PC互联网发展的必然产物,将移动通信和互联网二者结合起来,成为一体.它是互联网的技术.平台.商业模 ...

最新文章

  1. 媒体智能应用落地靠5G,视频社交需要想象力
  2. 为什么现在的人越来越不幸福
  3. python介绍和用途-Python基础介绍(一)
  4. cambridge ifm strategic roadmapping takecontrol in times of uncerntainty
  5. struts2的action从request获取参数值的几种方式
  6. wireshark 抓包iphone 4g_比4G下续航短2小时,苹果回应iPhone12用5G耗电快:与运营商一道做更多优化工作...
  7. centos6安装mysql并远程连接_MySQL5.7数据库安装与远程连接
  8. oracle10g配置失败,求解决装oracle10g的时候EM配置失败问题
  9. 升级Big sur后提示没有权限来打开应用程序(注册机类),该怎么办
  10. 2022年谷歌Chrome等浏览器在线打开编辑保存微软Office/金山WPS的Word、Excel和PPT技术方案大全
  11. PHP创始人:开源与商业软件是竞合关系(转)
  12. Atom 编辑器的语法导航
  13. Windows防火墙开关及入站规则
  14. 习题 9.10 已有a,b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号升序排列。
  15. 分布式一致性算法—— 2PC与3PC
  16. 闲鱼如何保障交易链路质量
  17. 22-JavaScript 冒泡事件、事件捕获、默认事件、事件委托 DAY18(5.5)
  18. CANoe.DiVa的应用——生成测试用例粗略过程(一)
  19. 在外企工作三年的高手 给大家一些英语学习得建议和忠告
  20. 小米java面试题_小米java社招面试题分享,面经(一面二面)

热门文章

  1. 实例50:python
  2. STM32 软件重启导致死机的情况分析
  3. Python-100 练习题 03 完全平方数
  4. [线性代数]Note 1--方程组的几何解释
  5. beego——模板处理
  6. require与include的区别
  7. python基础(十三)
  8. CAEmitterLayer 和 CAEmitterCell 粒子发射
  9. SharePoint 跨域还原网站一则
  10. 刚学unity3d,跟着仿作了flappy bird,记下一些琐碎的心得!