C#图解教程读书笔记

注:会C语言学C#语法会容易很多,很多都是相通的,这本书讲的挺通俗易懂的,适合初学者

2. C#编程描述

2.7.3 格式化字符串

 2.7.5 格式化数字字符串

3. 类型、存储和变量

3.6 定义类型

class Myclass//用户自定义类型:先声明它
{
statement;
statement;
}
Myclass mc=new Myclass;//再实例化它,才能用

3.7 栈和堆

程序运行中,他的数据必须存储在内存中。运行中的程序使用两个内存区域来存储数据:栈和堆

栈:后进先出

堆:可以以任意顺序存入和移除

3.8 值类型和引用类型

值类型直接存储其值,而引用类型存储对其值的引用。

4.类的基本概念

4.3 声明类

类是一种活动的数据结构

4.4 类成员

字段和方法试最主要的类成员类型。字段是数据成员,方法是函数成员。

4.6 为数据分配内存

4.8 访问修饰符

下面是字段和方法声明的语法:

5种成员访问控制如下:

  • 私有的(private)
  • 公有的(public)
  • 受保护的(protected)
  • 内部的(internal)
  • 受保护内部的(protected internal)

默认为私有访问

4.9 从类的内部访问成员

4.10 从类的外部访问成员

要从类的外部访问实例成员,必须包括变量名称和成员名称,中间用句点(.)分隔。

5. 方法

5.3 本地变量

var关键字并不是特定类型变量的符号,表示任何可以从初始化语句的右边推断出的类型。

本地变量即局部变量,static

5.6 方法调用

什么时候用【类名.方法】

两种方法调用类中的函数:https://www.cnblogs.com/kevinl/p/13264128.html

 

  1. 方法在Program中,静态成员可以直接调用函数,不需要【类名.方法】后才能调用
namespace Exp04_1
{
    class Program
    {
        //方法在Program中,且为静态成员
         static double digui(int n)  
        {
           
        }
        static void Main(string[] args)
        {
            double sum = 0;
            int sjs;
            Console.WriteLine("输入一个整数,求这个数前面所有数阶层的和");
            sjs = Convert.ToInt32(Console.ReadLine());
            for (int i = 1; i <= sjs; i++)
            {
                sum = sum + digui(i);//方法在Program中,静态成员可以直接调用函数,不需要【类名.方法】后才能调用
            }
        }
    }
}

 2.方法在自己创建的类myc中,实例成员要实例化对象【对象.方法】之后才能调用

namespace Exp04_1
{
    //方法在自己创建的类myc中,且为实例成员
    class myc
    {
        public double digui(int n)
        {
           
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            double sum = 0;
            int sjs;
            Console.WriteLine("输入一个整数,求这个数前面所有数阶层的和");
            sjs = Convert.ToInt32(Console.ReadLine());
            myc sj = new myc();
            for (int i = 1; i <= sjs; i++)
            {
                sum = sum + sj.digui(i);//方法在自己创建的类myc中,实例成员要实例化对象【对象.方法】之后才能调用
            }
        }
    }
}

3.书上示例

class Myclass
{
    void PrintDateAndTime()            //声明方法
    {
        DateTime dt=DateTime.Now();    
    }
    static void Main()
    {
        Myclass mc=new Myclass();
        mc.PrintDateAndTime();           //调用方法      
    }
}

5.7 返回值

可返回用户定义类型的对象

5.10值参数——5.12引用参数作为值参数和引用参数:

该链接和书本内容一致,但排版清晰,利于阅读https://www.cnblogs.com/liuyoung/p/7819052.html

5.13 输出参数

  • 必须在声明和调用中都使用修饰符,输出参数的修饰符是out而不是ref
  • 和引用参数类似,但是如果方法中有任何执行路径试图在输出参数被方法赋值前读取它,会报错

5.14 参数数组

  • 在数据类型前使用params修饰符
  • 在数据类型后放置一组空的方括号

5.15 参数类型总结

6. 深入理解类

6.3 实例类成员

改变一个实例字段不会影响任何其他实例中成员的值

6.4 静态字段

      示例:

6.8 成员常量

与C和C++不同。在C#中没有全局常量,每个常量必须声明在类型内。

常量成员表现的像一个静态量,但不能将常量声明为static

6.10 属性

属性和字段类似,有如下特征:

  • 它是命名的类成员
  • 它有类型
  • 它可以被赋值和读取

和字段不同的是,属性是一个函数成员

  • 它不为数据存储分配内存
  • 它执行代码

属性是指定的一组两个匹配的、称为访问器的方法。

  • set访问器为属性赋值
  • get访问器从属性获取值

6.13 对象初始化

6.15 readonly修饰符

const字段只能在字段的声明语句中初始化,而readonly字段可以在下列任意位置设置它的值

  • 字段声明语句,类型const
  • 类的任何构造函数

const字段值必须在编译时决定,而readonly字段的值可以在运行时决定

6.16 this关键字

this关键字在类中使用,是对当前实例的引用。它只能被用在下列类成员的代码块中。

  • 实例构造函数
  • 实例方法
  • 属性和索引器的实例访问器

不能在任何静态函数成员的代码中使用this关键字

6.17 索引器

是一组get和set访问器,索引器总是实例成员,因此不能声明为static

7.1 类继承

当创建一个类时,程序员不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类,这个新的类被称为派生类

7.2 访问继承的成员

代码显示OtherClass的所有4个成员都能被无缝访问,无论他们在基类中声明还是在派生类中声明

7.4 屏蔽基类的成员

虽然派生类不能删除它继承的任何成员,但可以用与基类成员名称相同的成员来屏蔽基类成员

7.5 基类访问

如果派生类必须完全的访问被隐藏的继承成员,可以使用基类访问表达式访问隐藏的继承成员

基类访问表达式有关键字base后面跟一个点和成员的名称组成。

上述代码用base.Field1,则打印出基类Field1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《轻松学C#(图解版)》完整扫描版================================================================ 基本信息 作者:谷涛、扶晓、毕国锋 丛书名:轻松学开发 出版社:电子工业出版社 ISBN:978-7-121-20223-0 出版日期:2013年6月 开本:16开 页码:408页 版次:1-1 定价:¥55.00 所属分类:计算机 > 软件与程序设计 > C# ================================================================ 内容简介 本书由浅入深,全面、系统地介绍了C#程序设计。除了详细地讲解C#知识点外,本书还提供了大量的实例,供读者实战演练。本书共分三篇。第一篇是C#概述篇,主要介绍的是Visual Studio 2012的开发环境及搭建。第二篇是面向对象基础篇,主要介绍类、对象、字段、方法、流程控制、数组、继承、属性、运算符重载、接口等C#基本内容。第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、预处理器、程序集、运行时类型标识、反射、特性、泛型、LINQ和数据库开发等。 ================================================================ 图书目录 第一篇 C#概述篇 第1章 C#入门 2 1.1 C#概述 2 1.1.1 C#的发展 2 1.1.2 C#开发的基础 2 1.2 搭建开发环境 3 1.2.1 Visual Studio 2012软硬件配置要求 3 1.2.2 下载Visual Studio 2012 3 1.2.3 安装Visual Studio 2012 4 1.2.4 初始化配置 7 1.3 第一个程序—Hello World 8 1.4 小结 11 1.5 习题 12 第二篇 面向对象基础篇 第2章 类和对象 16 2.1 分析Hello World程序 16 2.2 语法规范 17 2.2.1 标识符 17 2.2.2 关键字 18 2.2.3 注释 19 2.3 定义类 20 2.4 实例化对象 20 2.5 小结 20 2.6 习题 21 第3章 定义类——字段 23 3.1 数据类型 23 3.1.1 简单值类型 23 3.1.2 值的表示——字面量 26 3.1.3 转义序列 27 3.2 定义字段 27 3.2.1 定义字段 28 3.2.2 静态字段和实例字段的访问 28 3.2.3 字段初始化 29 3.2.4 字段的动态赋值——Read()和ReadLine() 31 3.2.5 字段输出 31 3.2.6 格式化输出 32 3.2.7 数据类型转换 39 3.2.8 只读字段 41 3.2.9 访问控制 41 3.3 运算符 43 3.3.1 算术运算符 43 3.3.2 自增、自减运算符 44 3.3.3 复合赋值运算符 45 3.3.4 位运算符 46 3.3.5 sizeof运算符 47 3.3.6 运算符的优先级 47 3.4 小结 49 3.5 习题 49 第4章 定义类——方法 51 4.1 方法的概述 51 4.1.1 定义方法 51 4.1.2 方法的调用 52 4.2 方法体的构成 53 4.2.1 局部变量 53 4.2.2 局部变量与字段同名的解决——this关键字 54 4.2.3 语句 55 4.2.4 全局变量 55 4.3 返回值 56 4.3.1 返回值类型 56 4.3.2 从方法返回 57 4.4 参数 58 4.4.1 参数的分类 58 4.4.2 引用参数(ref参数) 59 4.4.3 输出参数(out参数) 61 4.5 特殊的方法 62 4.5

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值