C#笔记---面向对象

using System;
//类的设计
class Person
{

    //引用数据类型的初始值为null
    //特征(通过字段来表现)
   public string name;
   public int age;
   public char gender;
    //行为(通过方法来表现)
    public void Eat()
    {
        Console.WriteLine(name);
    }
}

class Program
{
    static void Main(string[] args)
    {
        //实例化一个person的对象
        Person laowang = new Person();
        //
        Console.WriteLine(laowang);//Person
        //访问类中的成员
        //通过.来访问
        laowang.name = "老王";
        laowang.gender = 'M';
        Console.WriteLine(laowang.name);

        laowang.Eat();
        //类中的字段是有默认值的
    }
}

构造方法

//构造方法没有返回值 方法名必须是类名 不能显示调用在实例化对象时自动调用
using System;
class Person
{
    //无参构造方法
    public String name;
    public int age;
    public Person()//如果一个类中没有写构造方法。那么系统会默认提供一个
    {
        Console.WriteLine("无参构造方法被调用了");
        this.age = 10;
    }
}
class Program
{
    public static void Main(string[] args)
    {
        Person xiaoming = new Person();//调用了
        Console.WriteLine(xiaoming.age);
    }
}
//构造方法没有返回值 方法名必须是类名 不能显示调用在实例化对象时自动调用
using System;
class Person
{
    //无参构造方法
    public String name;
    public int age;

    public Person()//如果一个类中没有写构造方法。那么系统会默认提供一个
    {
        Console.WriteLine("无参构造方法被调用了");
        this.age = 10;
    }
    public Person(int a)//如果一个类中没有写构造方法。那么系统会默认提供一个
    {
        Console.WriteLine("有参构造方法被调用了");
       
    }
    public Person(int a,float b)
    {
        Console.WriteLine("Person(int, float)被调用");
    }
}
class Program
{
    public static void Main(string[] args)
    {
        Person xiaoming = new Person();//调用了
        Person xiaoming1= new Person(1);
        Person xiaoming2 = new Person(1 2);
        Console.WriteLine(xiaoming.age);
    }
}

using System;

class Person
{

    
   public string name;
   public int age;
   public char gender;
    public float score;
    public void SetValues(string name,int age,char gender,float score)
    {
        this.name = name;
        this.age = age;
        this.gender = gender;
        this.score = score;
        //Console.WriteLine(name);
    }
}
class Program
{
    public static void Main(string[] args)
    {
        Person xiaoming = new Person();
        xiaoming.SetValues("xiaoming", 10, 'M', 90);
     
      

            
    }
}
using System;

class Person
{


    public string name;
    public int age;
    public char gender;
    public float score;
    public Person(string name, int age, char gender)
    {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }
    public Person(string name,int age,char gender,float score)
        :this(name,age,gender)
    {

    }
}
class Program
{
    public static void Main(string[] args)
    {
        //实例化一个对象xiaoming:name,age,gender字段的值
        Person xiaoming = new Person("xiaoming", 19, '男');
        Person laowang = new Person("laowang", 12, 'n');
    }
}

静态构造方法

using System;
class Person
{
    //静态构造方法 
    //不可以用public
    //不能有参数
    static Person()
    {
        //第一次使用被使用,只会执行一次
        Console.WriteLine("静态构造方法被调用了");
    }
    public Person()
    {
        Console.WriteLine("非静态被执行了");

    }
    public static void Show()
    {

    }
}
class Program
{
    public static void Main(string[] args)
    {
        Person.Show();
        Person xiaoming = null;
       // Person xiaming = new Person();
    }

}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值