编程思想
 
1.面向过程
 
面向过程是要把问题解决的过程分成有一定顺序的不同步骤, 然后按照步骤一步步的将问题解决.
 
2.面向对象
 
面向对象解决问题的思路是先分析问题中所涉及的对象, 然后是使对象执行各自的功能, 进而达到解决问题的目的.
 
一.类
 
类, 就是类型, 是具有相同特征和功能的抽象.
 
类定义的格式
访问修饰符  class 类名
{
特征
行为
}
// 注: 特征和行为都称为该类的成员;

例1

    public class Zomby
{
public string color;
public float height;
public float weight;
public int level; public void Jump()
{
Console.WriteLine("Jumping...");
}
public void Bite()
{
Console.WriteLine("Biting...");
}
注:class后面是类型名, 类名的命名要符合大驼峰命名法;
 
二.对象
 
类是抽象的, 对象是该类的一个具体的事物. 比如, 英雄是一个类, 鲁班7号就是一个具体的对象.
 
创建对象
类名 对象名 = new 类名();

例1

Zomby zb = new Zomby();
三.访问修饰符
  1. internal: 只能在同一个namespace下使用;
  2. private: 如果一个字段被设置成私有的时候, 只能在类内部使用, 在类的外部是无法使用的;
  3. public: 访问不受限制, 在哪都能访问;
  4. protected: 只能是该类或该类的派生类能使用;
结构体:
  1. 结构体定义到类的外部: 默认访问级别是internal(只能用public和internal来修饰);
  2. 当结构体定义到类的内部的时四种访问修饰符都可以使用, 默认是private;(这个时候结构体就是类的成员)
结构体成员
可以用internal, private和public来修饰, 默认是private;
类:
默认的访问级别是internal(只能使用public和internal来修饰)
类的成员:
默认的访问级别是private(可以用private, protected, public, internal);
 
四.方法
 
方法: 封装了一段具有特殊功能的代码段;
 
第一种形式: 无参, 无返回值
访问修饰符 void 方法名()
{
代码段;
} // 调用的格式:
对象名.方法名();

练习1.

public class Math
{
public void UsingMath()
{
Console.WriteLine("您正在感受代码之美...");
}
}

第二种形式: 无参, 有返回值的

访问修饰符 返回值类型 方法名()
{
代码段;
return 具体的值; // 该数值一定要和返回值类型保持一致
} // 调用格式 返回值类型 变量名 = 对象名.方法名();

练习2

public int Sum()
{
int a = ;
int b = ;
int sum = a + b;
return sum;
}
注意:
  1. 在VS下输入 对象名.方法名(,) 可以看到该方法的参数和返回值类型. 这样子程序不容易写错;
  2. 有返回值一定要有return, 无返回值的方法也可以使用return, 它代表整个方法被终止;
  3. 返回值只能返回一个数据也就是 一个方法只能有一个返回值
 
第三种形式: 有参数, 无返回值
访问修饰符 void 方法名(参数1, 参数2[,参数3...])
{
代码段;
} //调用格式: 对象名.方法名(实参1,实参2[.实参3...]);
// this 谁调用了该方法 this代表的就是谁

练习3 拼接两个字符串

public void AddString(string str1, string str2)
{
Console.WriteLine(str1 + str2);
}

第四种形式: 有参数有返回值

访问修饰符 返回值类型 方法名(参数1[,参数2...])
{
代码段;
return 数值;
} // 方法的调用 返回值类型 变量名 = 对象名.方法名(实参1[,实参2...]);
 练习4 计算int类型数组每个元素之和, 并将和存储起来
public int SumArray(int[] arr)
{
int sum = ;
foreach(int item in arr)
{
sum += item;
}
Console.WriteLine("The sum is : " + sum);
return sum;
}

思维导图

 
 
 
 
 
 

C#学习笔记06--类/对象/访问修饰符/方法的更多相关文章

  1. 12、类成员访问修饰符public/private/producted/readonly

    1.private 类的私有成员 private 类的私有成员,只能在内部访问,在外部访问不到,无法被继承,我们可以将不需要被外部修改的定义为私有的 私有成员,只能在内部访问,在外部访问不到 priv ...

  2. Java自学-类和对象 访问修饰符

    Java的四种访问修饰符 成员变量有四种修饰符 private 私有的 package/friendly/default 不写 protected 受保护的 public 公共的 比如public 表 ...

  3. C#学习-图解教程(2):访问修饰符(其中两种)

    学习内容:C#:学习书籍:图解教程(中文第四版). 目录:第四章 类的基本概念 -----> 4.8 访问修饰符 访问修饰符 从类的内部,任何函数成员都可以使用成员的名称访问类中任意的其他成员. ...

  4. C#类的访问修饰符

    默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它.可以用internal访问修饰符关键字显式指定,但这不是必须的,类在定义时默认为此类型的类.但是C# 方法默认访问级别: private. ...

  5. java类的访问修饰符

    1.java中外部类的访问修饰符有如下四种: public,默认,abstract,final // public,默认,abstract,final. public class Test1 {} c ...

  6. Java——类的访问修饰符

    1.java中外部类的访问修饰符有如下四种: public,默认,abstract,final // public,默认,abstract,final. public class Test1 {} c ...

  7. 类的访问修饰符_C#

    访问控制修饰符: 访问控制修饰符 类内部 子类 程序集内 程序集外 Default √ Public √ √ √ √ Private √ Internal √ √ √ Protected √ √ Pr ...

  8. solidity 学习笔记(3) 函数修饰符/继承

    修饰符: 函数修饰符有 constant  view pure 其中 constant和view的功能是一样的  不会消耗gas 也就是说不会做任何存储   constant在5.0以后的版本中被废弃 ...

  9. Vue学习笔记【13】——键盘修饰符以及自定义键盘修饰符

    1.x版本中自定义键盘修饰符[了解] Vue.directive('on').keyCodes.f2 = 113; 2.x版本中自定义键盘修饰符 通过Vue.config.keyCodes.名称 = ...

随机推荐

  1. 05_Nginx日志分析

    如果不进行过滤,ES中存储的Nginx的日志是整行日志,在Kibana页面中只能查看到整行的日志,并没有其他太多的价值,所以我们需要对日志进行分割过滤,更有利于进行日志的分析. 学习本章需要具备一定的 ...

  2. BZOJ4406 WC2016 论战捆竹竿

    Problem BZOJ Solution 显然是一个同余系最短路问题,转移方案就是所有|S|-border的长度,有 \(O(n)\) 种,暴力跑dijkstra的复杂度为 \(O(n^2\log ...

  3. Windows下OpenFOAM开发及使用环境配置指南 (1)【转载】

    转载自:http://openfoam.blog.sohu.com/158614863.html *************************************************** ...

  4. 使用SQL中的update更新多个字段值

    使用SQL中的update更新多个字段值,set后面的条件要用逗号不能用and set后面的多个条件之间没有关联也不可以有关联,所以就不能用and了:where 条件后面 可以为and 如: upda ...

  5. Uber如何搭建一个基于Kafka的跨数据中心复制平台 原创: 徐宏亮 AI前线 今天

    Uber如何搭建一个基于Kafka的跨数据中心复制平台 原创: 徐宏亮 AI前线 今天

  6. 8.3 Customizing Git - Git Hooks

    https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks https://github.com/git/git/blob/master/temp ...

  7. Matrix: Matrix的,postScale(), postTranslate()方法

    Matrix的操作,总共分为translate(平移),rotate(旋转),scale(缩放)和skew(倾斜)四种,每一种变换在Android的API里都提供了set, post和pre三种操作方 ...

  8. "Could not resolve host: mirrorlist.centos.org; Unknown error"解决方法

    这两天学习历程可谓历尽坎坷,昨天在vSphere Client中安装完CentOS系统后,今天尝试在系统中安装mysql数据库. 由于刚接触Linux,所以对于一些常用指令和操作并不熟悉,也是一边百度 ...

  9. 使用MockMvc进行springboot调试(SpringbootTest)

    测试前关闭web项目.springboot启动程序WebApplication.class 笔者本地自定了端口SpringBootTest.WebEnvironment.DEFINED_PORT 代码 ...

  10. MySQL中使用replace into语句批量更新表数据

    作为示例,我们在这里使用名为testdb的数据库,并且在其中创建两张一模一样的表: drop table if exists test_table_1; create table test_table ...