day6
面向对象

面向过程是分析解决问题的步骤,然后把步骤实现
面向对象是把构成问题的事分解成各个对象,不是为了完成步骤,为了描述在整个

类是类别 是一种抽象的数据类型 是相同特征实体的抽象
类里共同行为或者特征二者存一也可

访问修饰符 class 类名{ 类成员 }

class person
{  public string name;public void Chat(){方法内容}
}

声明其他命名空间

命名空间.类名 变量=new 命名空间.类();
{public string name;
///<summary>
///聊天
///</summary>public void chat(){console.writeline("");
}

对象、

对象是类的具象化

创建对象

类名 对象名

类名 变量名 =new 类名();//←new一个对象出来

字段

字段就是描述一个雷特征的变量

创建一个字段

访问修饰符 数据类型 变量;

class Person{public string name;
}
//↑默认的访问修饰符是private,字段也可以赋初始值

访问字段

对象.字段名

person xiaoming =new person();
//↑ 无法点到私有字段

方法
封装有特定功能的代码段‘
用来描述类的行为

方法的创建

访问修饰符 返回值 方法名(参数列表)
{   代码块 return值;}

方法的调用

返回值类型 变量名 = 对象名.方法名(实参列表);

无参无返回值的方法

public void introduceme(){console.writeline($"我叫{this.name}");
console.WriteLine($“今年{age}岁”);
}

无参数有返回值的方法

public string getname()
{int grade = age-6;if(grade<0||grade>12){grade=0;}return name;
}

又參无返回值的方法

public void setnewhobby(string newHobby)
{console.WriteLine($"我有了新的爱好{newHobby}");hobby += newHobby;
}

有参有返回值

public string setNewFamuktMember(string newMember, MemberType memberType){switch (memberType){case memberType.Wife:Console.WriteLine("恭喜你有了新的家庭成员(妻子)"+newMember);familyMbers[2] = newMember;case memberType.Child:Console.WriteLine("恭喜你有了新的家庭成员(孩子)"+newMember);familyMember[2] = newMember;break;default:break;}return familyMemberds;}

this关键词

如果 想调用远的要用this
如果没有重名现象可以省略this

/*创建CF当中的玩家类Player,该类含有字段:名字,性别,血量,武器。
武器背包当中匕首,步枪,机枪,狙击枪。
玩家类具有以下方法:
(1)自我介绍Introduce方法
(2)换武器装备
(3)受到攻击掉血,当血量小于等于0的时候玩家死亡
(4)攻击其他玩家的方法
*/enum WeapenType{bihsou,laifu,jiqiang,juji}class Weapen{public string name;public int atk;public WeapenType type = WeapenType.jiqiang;public Weapen(string name,int atk,WeapenType type){this.name = name;this.atk = atk;this.type = type;}}class Player{enum Sex{女,男}public string p_name;Sex sex;public int hp;Weapen weapen;static void introduce(){Console.WriteLine("请为自己的角色起一个名称");string name = Console.ReadLine();Console.WriteLine("我叫"+name);}public Player(){//添加武器weapens[0] = new Weapen("ak",250,WeapenType.jiqiang);weapens[1] = new Weapen("m416", 150, WeapenType.jiqiang);weapens[2] = new Weapen("awm", 850, WeapenType.juji);weapens[3] = new Weapen("ak", 250, WeapenType.jiqiang);}public Weapen[] weapens = new Weapen[5];public void EquipWeapon(Weapen weapen){this.weapen = weapen;}//收到攻击public void GetHit(int damage){hp -= damage;Console.WriteLine(p_name+"受到了"+damage+"点伤害");if (hp<=0){Console.WriteLine("wamjiasiwang");}}//gongjipublic void AttackPlayer(Player player){player.GetHit(weapen.atk);}}

day6 面向对象 类的定义访问 命名空间的声明 对象的定义创建 字段的定义创建访问 方法的创建调用相关推荐

  1. python中表示类的公有成员_Python面向对象 | 类的成员

    一. 细分类的组成成员 之前咱们讲过类大致分两块区域,静态字段部分和方法部分. 每个区域详细划分又可以分为: classA: company= '阿里巴巴' #静态变量(静态字段) __tel = ' ...

  2. C#命名空间namespace中不能直接包含字段(变量)或方法(函数)之类的成员

    C#命名空间即namespace中不能直接包含字段(变量)或方法(函数)之类的成员,须将字段或方法放到类class中,否则编译器会报错. C#命名空间中不能直接定义字段(变量): 将value字段(变 ...

  3. 【C++ 语言】面向对象 ( 类定义 | 限制头文件引用次数 | 构造方法 | 析构方法 )

    文章目录 类的定义 ( 头文件引用次数控制 ) 类的实现 ( 构造函数 | 析构函数 ) CMake 编译配置 类测试 ( 构造析构调用测试 ) 类的定义 ( 头文件引用次数控制 ) 类定义 , 类一 ...

  4. Java之数组的定义格式,【默认值规则】,Java内存划分5大区,面向对象类的基本定义和对象的使用,private和this关键字,类的构造方法,标准类的组成部分。

    目录 1.数组 动态初始化数组的格式: 默认值规则 静态初始化数组的格式: 静态方式的省略格式 注意: 2.java的内存划分 3.数组内存图 4.数组常见的问题 5.面向对象 (1)类和对象 (2) ...

  5. 20180724 (面向对象:类的命名空间和查询顺序丶组合)

    一.类的名称空间 类名()  产生了一个含有对象指针的空间 先执行代码 从上向下执行 首先执行到class的时候,创建了一个Person类的空间,其中有静态变量和方法以及方法的内存地址 之后执行到p1 ...

  6. 十一Python之路,Day6 - 面向对象学习

    本节内容: 面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法. 引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你 ...

  7. C++学习笔记:(一)面向对象 类与对象

    目录 1.面向对象的概念 2.类与对象 2.1 类的定义格式 2.2 对象的定义与使用 2.3 构造函数和析构函数 2.4 内存的动态分配 2.5 对象数组和对象指针 2.6 函数参数的传递机制 2. ...

  8. C#面向对象类的简议

    C#面向对象类的简议 类 就.net平台而言,最基本的编程结构就是类类型. 类是由字段数据(通常叫成员或者变量)和操作这些数据的成员(函数.属性.事件.方法)所构成的自定义类型. 字段数据用来表示类的 ...

  9. python面向对象类属性_python面向对象之类属性和类方法案例分析

    本文实例讲述了python面向对象之类属性和类方法.分享给大家供大家参考,具体如下: 目标 类的结构 类属性和实例属性 类方法和静态方法 01. 类的结构 1.1 术语 -- 实例 使用面相对象开发, ...

最新文章

  1. Nature:揭示人大脑类器官为何缺乏正常人脑特有的细胞亚型和复杂回路
  2. 计算机三维作品说明,计算机三维技术
  3. SMARTFORM的使用BSIS会计凭证中的字段DMBTR(本币金额)报错
  4. 深度学习修炼(一)——从机器学习转向深度学习
  5. 13凯越门锁继电器在哪里_汽车中控保险丝在哪里_汽车一年保险费_保险频道
  6. SharePoint 2010 technology stack
  7. mysql5.6.31安装及配置
  8. oracle 列出asm磁盘,如何列出ASM磁盘组的所有磁盘
  9. qt解决中文乱码问题。总结一下
  10. 数字图像处理:名词解释
  11. 使用RedisTemplate执行lua脚本
  12. 移动端 1px 像素处理
  13. 查看电脑安装的Office是32位还是64位的
  14. 苹果手机上的计算机恢复出厂设置在哪里,苹果手机怎么还原出厂设置【详解】...
  15. laravel 实现队列功能
  16. 数据分析案例-航班准点分析
  17. html链接路径分为哪几种,什么是url地址?
  18. bolb layer
  19. KJ分析法(亲和图)的应用实例及知识分享
  20. 梯度下降与反向传播算法的原理与推导

热门文章

  1. Mplus教程张伟豪
  2. 1药网母公司CFO徐伟豪将离职 未来回归投资行业
  3. 卡苹果6plus在线_京津冀互联互通卡实现苹果、安卓全覆盖
  4. 如何拍摄高质量短视频,掌握这3大绝招即可丨国仁网络资讯
  5. 朋友圈美食“小心机”拍摄技巧
  6. 高德客户端及引擎技术架构演进与思考
  7. 责任链模式 多条链路时 spring单例 造成的深坑
  8. React框架的基本使用
  9. nginx+lua(openresty)实现黑/白名单权限控制
  10. Materials - FlowMap导致的材质马赛克效果