C#基础入门 三

  • 类使用class关键字进行声明,前面加一个访问修饰符,public class car{}
  • 访问修饰符:修师傅可以用来修饰类和类成员等,控制它们的可见度
  • 修饰符关键字分别为:public,internal,protected,private
  • 使用上面四个访问修饰符可指定下列五个可访问性级别:
    • public:访问不受限制;
    • protected:访问仅限于包含类或从包含类派生的类型;
    • internal:访问仅限于当前程序集;
    • protected internal:访问限制到当前程序集或从包含派生的类型的类别;
    • private:访问仅限于包含类型。

对象

  • 对象是具体的,对象也称为实例,可以存储在命名变量中,也可以存储在数组或集合中。
  • 类的对象是使用new运算符创建。

静态类

  • 用static修饰符声明的类称为静态类,静态类与普通类基本相同,但存在一个区别,静态类不能实例化,也就是说,不能使用new关键字创建静态类类型的变量。因为没有实例变量,所以要使用类名本身访问静态类的成员。
  • 用static修饰的成员称为静态成员,静态方法和属性中不能包含非静态字段和方法。
  • 静态字段有两个常见的用法:一是记录已实例化对象的个数,二是存储必须在所有实例之间共享的值。
  • 非静态成员是由对象操作的,静态成员则是由类操作的。

类成员

字段

  • 字段是直接在类或结构体中声明的任何类型的变量,字段就是其包含类型的“成员”。在类块中通过制定字段的访问级别然后指定字段的类型,再指定字段的名称来声明这些字段,public string name="zxh";

属性

  • 属性是这样的成员:它提供灵活的机制来读取、编写或计算某个私有字段的值,可以像公共数据成员一样使用属性,但实际上它们是称作“访问器”的特殊方法,这使得可以轻松访问数据,此外还有助于提高方法的安全性和灵活性。
public class Car
{
protected string brand="BMW";
public string Brand
{
get
{
return brand;//get访问器,用来读取属性值
}
set
{
brand = value;//set访问器,用来给属性赋值
}
} }
  • 注意:不具有访问器的属性被视为只读属性,不具有get访问器的属性被视为只写属性,同时具有这两个访问器的属性是读写属性。如下图(图7),将set注释掉,下面为brand赋值出现错误,此时属性仅为只读。同理将get注释掉,则属性不可读,不可以打印出来。

  • 可将属性标记为public、private、protected、internal或protected internal,同一属性的get和set访问器可能具有不同的访问修饰符,例如,get可能是public以允许来自类型外的只读访问;set可能是private。(仅当属性同时具有get和set访问器时,才能使用访问器修饰符,并且只允许对其中一个访问器使用修饰符)

方法

  • 方法其实就是函数,只不过,类内部的函数我们通常称为方法
  • 方法是具有特定功能的代码段,方法的使用可以省去重复代码的编写,大大简化程序,提高开发效率。
  • 方法可以分为库方法,例如Console.Write(),和自定义方法。
  • 方法的定义:访问修饰符 返回值类型(void/int/char...) 函数名(形式参数列表){语句; return 返回值;}
  • 定义了一个Run方法
 public class Car
{
public string brand="BMW";
public string Brand
{
get
{
return brand;
}
set{ brand = value;}
}
public void Run(int oil)
{
Console.WriteLine("车里有{0}升油", oil);
return;
}
}
  • 方法的返回值称为方法的值,只能通过return语句返回给主调函数,一个方法最多只能有一个返回值,方法即使没有返回值也可以使用return来结束方法的执行,回到主调方法,return后面的语句不再执行。

C#基础入门 三的更多相关文章

  1. Swift语法基础入门三(函数, 闭包)

    Swift语法基础入门三(函数, 闭包) 函数: 函数是用来完成特定任务的独立的代码块.你给一个函数起一个合适的名字,用来标识函数做什么,并且当函数需要执行的时候,这个名字会被用于“调用”函数 格式: ...

  2. Oracle基础入门(三)

    一:PLsql一些基本操作 调节plsql的字体大小 二:创建表,如果学过sql server的数据库就会发现其实Oracle跟的一些新建表和新增修改其实是差不多的 新建表 Create table ...

  3. C#学习笔记---基础入门(三)

    泛型<T> 使用泛型能够最大限度的重用代码/保护类型安全,提高性能 泛型成员因为类型的不确定性,不能使用算术运算符/比较运算符 类型参数可以有多个,可以是编译器能够识别的任何类型 类型参数 ...

  4. Java基础入门 - 三种注释及文档注释详解

    类似C/C++,Java也支持单行和多行注释 注释中的字符在编译时会被忽略 注释通常为类.变量和方法的主要描述 单行注释 // 注释内容 多行注释 /* 注释内容 */ /* * 注释内容 */ 文档 ...

  5. Mybatis框架基础入门(三)--Mapper动态代理方式开发

    使用MyBatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper动态代理开发方法. 原始Dao开发方法需要程序员编写Dao接口和Dao实现类,此方式开发Dao,存在以下问题: Dao方 ...

  6. PHP基础入门(三)---PHP函数基础

    PHP基础入门(三)---函数 今天来给大家分享一下PHP的函数基础.有了前两章的了解,想必大家对PHP有了一定的基础了解.想回顾前两章的朋友可以点击"PHP基础入门(一)"&qu ...

  7. MyBatis基础入门《三》Select查询集合

    MyBatis基础入门<三>Select查询集合 描述: 代码新增了一个MybatisUtil工具类,查询数据库返回集合的时候,接收数据的三种方式.由于代码会渐渐增多,未涉及改动过的文件不 ...

  8. Python入门基础学习 三

    Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...

  9. IM开发者的零基础通信技术入门(三):国人通信方式的百年变迁

    [来源申明]本文原文来自:微信公众号“鲜枣课堂”,官方网站:xzclass.com,原题为:<中国通信的百年沉浮>,本文引用时已征得原作者同意.为了更好的内容呈现,即时通讯网在收录时内容有 ...

随机推荐

  1. vue表单验证--veevalidate使用教程

    vue表单验证----vee-validate使用教程 官网:https://baianat.github.io/vee-validate/ 一.安装 npm install vee-validate ...

  2. StringUtils.hasText()

    StringUtils.hasText(字符串) 如果字符串里面的值为null, "", "   ",那么返回值为false:否则为true

  3. js小功能

    1 删除左右两端的空格 //删除左右两端的空格 function trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } 2 ...

  4. java算法 蓝桥杯 洗牌

    问题描述 小弱T在闲暇的时候会和室友打扑克,输的人就要负责洗牌.虽然小弱T不怎么会洗牌,但是他却总是输. 渐渐地小弱T发现了一个规律:只要自己洗牌,自己就一定会输.所以小弱T认为自己洗牌不够均匀,就独 ...

  5. 启动和关闭MySQL服务

    停止mysql服务,说来简单,但不知道的话,还真是挠头.在这和mysql入门的同学们共享:)  正确方法是,进入mysql的bin目录下,然后执行./mysqladmin -uroot -p shut ...

  6. mysql sql left right inner join区别及效率比较

    一.Join语法概述 join 用于多表中字段之间的联系,语法如下: ... FROM table1 INNER|LEFT|RIGHT JOIN table2 ON conditiona table1 ...

  7. CloudStack 4.3功能前瞻

    今天CloudStack 4.3已经Feature Freeze了,不会再有新功能加入到这个版本里.我们也可以坐下来看看哪些功能是值得期待的.首先,4.3的UI也秉承扁平化设计,看着更加简洁清爽.见下 ...

  8. ubuntu14.04 64 位 vmware tools 问题

    当提示说open-vm-tools版本太低时可以这样解决 1.sudo apt-get autoremove open-vm-dkms open-vm-tools --purge 2.安装vmware ...

  9. Zookeeper使用--Java API

    1  创建节点 创建节点有异步和同步两种方式.无论是异步或者同步,Zookeeper都不支持递归调用,即无法在父节点不存在的情况下创建一个子节点,如在/zk-ephemeral节点不存在的情况下创建/ ...

  10. linux操作系统下,怎么使用kill按照PID一次杀死多个进程

    1.ps -ef | grep firefox | grep -v grep | cut -c 9-15 | xargs kill -s 9 说明:“grep firefox”的输出结果是,所有含有关 ...