黑马程序员——C#面向对象

本文介绍了C#面向对象的概念,包括如何通过类创建对象、访问修饰符的使用、属性的定义、构造方法的重要性和命名空间的作用。示例代码演示了实例化、属性访问、异常处理和字符串操作。
摘要由CSDN通过智能技术生成
---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------
 
 
 
1)如何通过一个类产生一个对象?
   语法:类实例名=new 类();
   访问类的属性:
   实例名.属性名
   访问类的方法:
   实例名.方法名();

   只要是没有加static的方法或属性,都必须先实例化,
   再通过实例名.方法名或实例名.属性来访问。或类名
   .属性名来访问。
   加static的方法或属性,可以直接用过类名.方法名或类名
   .属性名来访问。
    代码如下:
  
    static void Main(string[] args)
    {
       person zsperson=new person();//语法
       person lsperson=new person();//语法
       zsperson.name="张三";
       zsperson.sex='男';
       zsperson.age=18;
  
      
       lsperson.name="李四";//访问类的属性
       lsperson.sex='女';//访问类的属性
       lsperson.age=16;//访问类的属性
       zsperson.SayHello();//访问类的方法
       lsperson.SayHello();//访问类的方法
       Console.ReadKey();

2)访问修饰符:在c#中有4个访问修饰符
    Public   :可以在任何地方被访问 (公共)
    internal:只能在本项目中被访问 (内部)
    Private    :只能在本类中被访问 (私有的)
    Protected   :只能在本类和子类中被访问 (受保护的)
在类这个级别,不写访问修饰符默认为internal

在一个类中定义变量或方法时,没有写访问修饰符,
那么默认的访问修饰符为private.
什么叫属性:通俗点说就是定义一个public的具有get/set的方法的变量。
这个变量是用于保护一个私有变量.

允许外部访问的变量一定要声明为属性.
读写属性:
具有get/set 的方法的属性叫做读写属性。
只有get方法的属性称为只读属性。这个属性只能读取不能写入。
只有set方法的属性称为只写属性。这个属性只能写入不能读取。

3)当我们实例化一个类时,系统会自动对这个类的属性进行初始化:
  数字类型初始化成0/0.0
  String类型初始化成:null
  Char  类型初始化成:\0
 使用构造方法的好处:
 1. 对多个属性进行赋值时,不需要重复的写实例名.
 2. 可以保证用户new一个对象的时候必须对一个属性进行赋值.
 3. 和第2类似,在创建对象时,对只读属性进行初始化.

 当我们定义好一个类之后,如果我们没有写构造方法,那么系统会
 自动给我们加上一个默认的无有参数的构造方法。在这个构造方法
 中什么也不做。我们也看不到.
 我们可以定义一个构造方法: 构造方法是一个特殊的方法,
 他的名字和类的名字相同,并且没有返回值。Void都可以省略不写。
 我们一旦手写一个构造方法后,系统原先默认给我们添加的那个
 无参的构造方法就不会再为我们添加了.
 要实例化一个类,必须调用他的构造方法.
 要想抛一个异常类,可以这样写: Throw new exception(“错误信息”);
 
  例如:
  if(distance < 0)
  {
    
     Exception ex = new Exception("距离不能为负数");
     thow ex
  }

 
4) Namespace(命名空间),用于解决类的重名问题,可以看做“类的文件假”。
   不在同一个个命名空间的类不能被直接访.
   要向访问别的命名空间下的类有两种方法:
   1. 通过Using引用对方的命名空间; 写出命名空间(ctrl+ . 回车)
   2. 写全称命名空间.类名.
   System根命名空间;
   String类型可以看做是char的只读数组;
   例如:
    string s ="hello,world!";
    char[] chars= s.ToCharArray();
    chars[1]='i';
    s=new string(chars);
    Console.Writeline(s);
---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------详细请查看: http://edu.csdn.net/heima/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值