设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 7272|回复: 4
打印 上一主题 下一主题

[读书] 图解教程从第2章以后在此跟帖累计(John Hu)

[复制链接]
跳转到指定楼层
1#
发表于 2014-3-21 16:06:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hehex 于 2014-3-24 10:53 编辑
  1. using System;
  2. namespace   HelloWorld

  3. {
  4.     class Program {
  5.          public  static void Main()  {
  6.                Console.Writeln("Hello World");        
  7.         }
  8.     }         

  9. }
复制代码

第一个最简单的控制台C# 程序 Hello World

在公司没有环境,只能徒手写代码
C# 变量的命名规则(略)

Pascal 命名法与Camel 命名法

C# 语句:简单语句与块语句
语句以英文; 作为结束
块的标识是{} 之间的语句序列

初步认识Console 类,Console.Write  方法 Console.Writeln 方法
感觉很亲切,神似 System.out.println 方法 System.out.print 方法

多重标记和值
{0},{1}, 取代后面真实位置参数的值,想起c 的"%d,%f"等等,不过c# 这种用法参数是有序的。

注释3种,没啥新鲜玩意,无法是c ,c++的块注释 /* */  行注释 //
增加了一种html 的文本注释 ///

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2014-3-21 16:09:28 | 只看该作者
学习了。
回复

使用道具 举报

3#
 楼主| 发表于 2014-3-24 11:21:13 | 只看该作者
第三章 类型存储和变量
C# 程序是一组类型声明
对于所有可执行的C# 代码必须有一个Main() 方法的类
命名空间是一个把相关类型声明分组并命名的方法。
以上知道即可,纯理论且非常拗口。

类型就是一组模板
一、预定义类型
预定义的类型包含(简单类型和非简单类型):整数,浮点数,字符串 等等…
简单类型:只能存储一个数据项。如:int  long 等等
其他类型: 比如数组array 可以存储相同数据类型的多个数据项

非简单类型:
有3种:string: 本质是一个Unicode 字符数组
                 object  所有对象类型的根基类
                dynamic 动态类型,这里不详细讨论
           (主要用于与动态脚本语言程序接口,如python, ruby 等)
二、 用户定义类型
包含以下内容:
类:class
枚举: enum
结构: struct
数组: array
委托: delegate
接口: interface
内存存储的初步知识:
栈和堆
栈的特征:后进先出,只能从栈顶进行插入和删除。栈操作指令: push ,pop
堆是一整块内存区域,可以任意顺序存入或者移除

简单的用个人理解的语言说:栈内存放局部简单变量(值变量)和引用型变量的引用
堆内存放对象的实体,以及new 出来的东西


值类型和引用类型。P27 页 表3-3 ,弄明白这个表格足够了。

三、变量
变量声明:给变量命名并且让它关联一种类型
变量的初始化:理解图3-5 p29
多重变量声明

四、创建可空类型

感觉本章 林林总总扯了一大篇,就讲了两件事,类型和变量以及变量的存储。
记住上面两个表格就足够了。
4#
 楼主| 发表于 2014-3-26 16:56:54 | 只看该作者
图解C# 读书笔记 第4章  类

类:一种活动的数据结构
声明类的语句:class 类名{   }
字段:隶属于类的变量
方法:具有名称的可执行代码块
方法的组成:方法的返回类型(无返回void)
                          方法的名称
                         括号()
                        参数列表
                       方法体{} 之间的语句块

实例化类对象的内存分配:p38  图4-3

类相当于一个磨具,要生成一个类的实例
实例字段和方法都需要先实例化对象才可以访问
new  关键字

静态字段和方法也成为类的字段和方法  static (后面详细讲解)
访问修饰符:代表不同的访问权限
private ,public, protected, internal, protected internal

4.11 的综合实例,已经在vs 上实敲过一遍,这里不再赘述
5#
 楼主| 发表于 2014-3-31 15:39:02 | 只看该作者
图解C# 第5章方法读书笔记

方法头确定方法特征,返回值,参数等等
方法体 包含执行该方法的代码序列 通常在{} 里,从上向下执行
方法中的本地变量 或者说局部变量
局部变量在使用前必须初始化
对比字段和局部变量 :图5-1
1、        字段可以隐式初始化,局部变量必须初始化赋值才能使用
2、        字段的生存期从实例生成开始到实例结束时终止。局部变量通常在定义的{} 中有效,出了{}就自动释放掉了。
3、        从存储方式上:字段保存在堆内存中(无论任何类型),局部变量值类型在栈内存中,引用类型,栈内存保存该变量的引用,实体保存在堆内存中。
var  关键字
var 关键字只是语法上的速记 ,使用显示类型声明和使用var 关键字是等效的。
要点:只能用于局部变量 ,不能用于字段。
            只能在变量声明(包含初始化时)中使用
             一旦编译器推断出该变量类型则其类型不可更改(注意:这点与vb 的变体型变量不同)
方法内部可以嵌套其他块,不能在嵌套块中声明与方法中同名的局部变量,这点要注意。
理解图5-3
局部常量(本地常量,这本书翻译的真成问题,local 一般翻成局部,这里就翻成本地)
在类型前添加关键字const
const  Type identifier  = value
const  类型 常量名    =  常量值
控制流,语句若干

方法调用:方法调用的内存图,图5-4
方法的返回值,在方法头定义返回值的类型,用return 语句。
注意:不返回值的方法使用void 定义方法返回值类型。
参数,形参与实参(与vba 大体相同,这里不赘述)
值参数与引用参数(相当于vba 里的byval  和byref )
与vba 不同,传值是默认,引用需要添加ref 关键字
图5-7 和图5-8 深刻理解内存中的传值与传引用不同

输出参数:out 关键字
必须在声明和调用中都使用out 修饰符
在方法内部,输出参数在读取前必须赋值。

参数数组
一个参数列表中只能有一个参数数组
在类型前使用params 修饰符
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-10 10:41 , Processed in 0.093112 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表