张银的博客


Eat to live, but do not live to eat.

导航

.net小杂烩

Posted on 2009-02-09 14:24  张银  阅读(392)  评论(0编辑  收藏  举报

1.<% Response.Write("aaa");%>
2.int a = 100, b = 5;
  Convert.ToString(a+=b);
3.int c = 888;
  int? cc = null;
  Label1.Text = Convert.ToString(cc ?? c);
4.Double r = 231.725;
  int u = Convert.ToInt32(r); //232
  decimal q = 151515.1156553311M;
  double x = Convert.ToDouble(q); //151515.116
5.string[] arr;
  arr = new string[5];
  string[] abc = new string[3];
  string[] aidd = {"aa","bb","cc"};
  string[,] a = new string[2,4];
  a[0,0] = "00";
  //...
  //a.Rank a的维数
  //a.GetUpperBound(a.Rank-1) 数组最大维数索引上限
  //GetUpperBound(0) 最小维数的索引上限

  for(int i = 0; i < a.Rank; i++)
 for (int j = 0; j <= a.GetUpperBound(a.Rank-1) )
  Response.Write(a[i,j].ToString() )
6.public struct Book //结构    希望结构被该页所有代码访问
 public int price;
 public string title;
 public string author;
 public int ok;

  enum em
 abc = 0,
 bcd = 1,
 cde = 2

  eunm ee {ttt, ccc, aaa}  //默认从0开始单向递增

  enum ee {ttt =1, ccc = 5, aaa = 9}

  Book bk;
  Book bok = new Book();
  bok.title = "标题";
  bok.0k = Convert.ToInt32(ee.ttt );
7.string a = "12345";
  //a.Length
8.string[] aidd = new string[] {"123","234","456"};
  foreach (string r in aidd)
 if (r.Contains("2") )
  r.ToString()
9.和JAVA一样,C#不允许有全局函数。所有函数必须在类或结构内 实现。函数是类或结构的成员,函数也被称为方法。
10.switch (c)
 case c<23:  //错误。只能简单的值或字符串判断,不能运算
  //...;
  break;
 case
11.函数ref
12.面向对象编程OOP
  更有效地编写代码 代码更简单 更易于维护 更容易理解
写出更实用且更美丽的代码
13.public class cal
 private string color;  //成员变量小写开头
 public string Color  //属性大写开头
  get
   return color;
  set
   color = value;
//get、set存取器

cal myCal = new cal();
myCal.Color = DropDownList1.SelectedValue.ToString();
14.构造函数运算符重载
msdn
避免定义运算符重载,但在 其用法应类似于基元(内置)类型的类型中除外
考虑在 其用法应类似于基元类型的类型中定义运算符重载

public class fuhao
{
 private string aidd;
 private int age;
 
 public fuhao
 {}
 ...

 public static string operator + (fuhao a, fuhao b)
 {return ...;}
}

fuhao fh = new ...;
fuhao fh2 = new ...;
//fh + fh2; //使用了类相加的重载
运算符的可重载性?

18.瘟多死 有你克死 理你克死 事件驱动的编程模式
可asp html没有回发postback
事件驱动编程 完全按照用户的意思去执行,而每次事件的处理过程都是在服务器上完成的

.net中的事件
面向对象编程,对象,page对象,输出HTML的可执行程序。每次调用,初始化,处理,送显,关闭释放。每步都触发事件。
事件不是亲手去做,却同样要触发,对事件进行了处理就会执行
Page_Init
只工作一次,重新加载不工作。检测客户端环境变量

19.Button1_Click(object sender, EventArgs e)
Button1_Command(object sender, CommandEventArgs e)//链接按钮也是用的这个
DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
 switch (DropDownList1.SelectValue)
  case "a":
   //
   break;
注意点击按钮时候 是否回发了 AutoPostBack
CheckBox1
回发了的话 点击按钮就是新页面了  ajax等技术除外

20.对象属于类
类单根继承System.Object/object
类:
属性 存储器 只读
方法
事件
函数

成员变量、成员函数都是类成员/分为静态和实体成员
public static string aaa;
public static void aaa()
{}
public string aaa;
public void aaa()
{}

C#所有的对象都将创建在托管堆上。
实例化后的类型称为对象,其核心特征是拥有了一份自己特有的数据成员拷贝。
这些为特有的对象所持有的数据成员我们称之为实例成员。
相反那些不为特有的对象所持有的数据成员称为静态成员,类中用Static修饰符申明。
仅对静态数据成员实施操作的称为静态函数成员

存取修改器
public
private类内部
protected类内部、继承此类的类
internal同一个应用程序(Application)或类库(Library)|基本不用