C# 面向对象之类和方法

来源:互联网 发布:mac os x10.10 dmg 编辑:程序博客网 时间:2024/04/29 02:12

一、新建一个类,用来存放属性和方法( 属性和方法写在同一个类中)。

先新建一个类:

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork 8 { 9     /*10      * 创建人:庞11      * 类型:P27 第一题12      * 时间:2017.09.0213      * 14      * **/15     public class Student16     {17         /// <summary>18         /// 创建自我介绍的方法19         /// </summary>20         /// <param name="Class"></param>21         /// <param name="Name"></param>22         /// <param name="Age"></param>23         /// <param name="Like"></param>24         public void SelfIntroduction()25         {26             Console.WriteLine("我来自"+Class+"班,我叫"+Name+",我今年"+Age+"岁,我的爱好是"+Like+"");           27         }28         29         #region 学生属性                30         /// <summary>31         /// 学生班级32         /// </summary>33         public string Class { get; set; }34         35         /// <summary>36         /// 学生姓名37         /// </summary>38         public string Name { get; set; }39         /// <summary>40         /// 学生年龄41         /// </summary>42         public int Age { get; set; }43         /// <summary>44         /// 学生爱好45         /// </summary>46         public string Like { get; set; }47         #endregion48     }49 }
View Code

然后在入口函数中将上面新建的类进行实例化,并给属性进行赋值,并调用函数(类和入口函数在两个页面上)。

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork 8 { 9     /*10      * 创建人:庞11      * 类型:P27 第一题12      * 时间:2017.09.0213      * 14      * **/15     class Program16     {17         static void Main(string[] args)18         {19             //实例化20             Student student1 = new Student();21             student1.Class = "T806";22             student1.Name = "小李";23             student1.Age = 18;24             student1.Like = "唱歌";25             //调用函数26             student1.SelfIntroduction();27             //实例化28             Student student2 = new Student();29             student2.Class = "T803";30             student2.Name = "小黄";31             student2.Age = 20;32             student2.Like = "nv";33             //调用函数34             student2.SelfIntroduction();35             Console.WriteLine("请按任意键继续……");36             Console.ReadKey();37         }38     }39 }
View Code

显示效果:

 

 

二、新建一个类页面,然后在里面新建一个入口函数用来调用方法、实例化、赋值;在下面再新建一个类,用来存放属性和方法。

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork.题2 8 { 9     /*10     * 创建人:庞11     * 类型:P27 第2题12     * 时间:2017.09.0213     * 14     * **/15     public class Class216     {17         /// <summary>18         /// 创建主程序入口函数19         /// </summary>20         /// <param name="args"></param>21         static void Main(string[] args)22         {23             Console.WriteLine("请输入姓名:");24             string name = Console.ReadLine();25             Console.WriteLine("请输入年龄,如果您输入的年龄有误,默认为18岁:");26             int age = Convert.ToInt32(Console.ReadLine());27             Console.WriteLine("请输入您的爱好,爱好不能超过20个字符:");28             string like = Console.ReadLine();29             //给属性赋值30             dierti dierti = new dierti();31             dierti.Name = name;32             dierti.age = age;33             dierti.Like = like;34             dierti.Check();35             Console.WriteLine("请按任意键继续……");36             Console.ReadKey();37 38         }39         /// <summary>40         /// 学生信息类41         /// </summary>42         public class dierti43         {44             #region 属性45             /// <summary>46             /// 输入姓名47             /// </summary>48             public string Name { get; set; }49             /// <summary>50             /// 年龄51             /// </summary>52             public int age { get; set; }53             public string Like { get; set; }54             #endregion55             /// <summary>56             /// 封装方法57             /// </summary>58             public void Check()59             {60                 Console.WriteLine("\n你刚才输入的姓名:{0}", Name);61                 if (age < 0 || age == -1)62                 {63                     Console.WriteLine("年龄:18");64                 }65                 else66                 {67                     Console.WriteLine("年龄:{0}", age);68                 }69                 if (Like.Length > 20)70                 {71                     Console.WriteLine("对不起,爱好不能超过20个字符!");72                 }73                 else74                 {75                     Console.WriteLine("爱好:{0}", Like);76                 }77             }78         }79     }80 81 }
View Code

显示效果:

 

1.调试的时候要修改启动项,方法步骤如下:

首先:

然后:

三、使用不同的构造函数来创建employ类

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork.题3 8 { 9     /*10     * 创建人:庞11     * 类型:P57 第1题12     * 时间:2017.09.0313     * 14     * **/15     public class demo0316     {17         /// <summary>18         /// 建立主入口函数19         /// </summary>20         /// <param name="args"></param>21         static void Main(string[] args)22         {23             Employee employee = new Employee();24             employee.Method01("小李");25             employee.Method02("小杨",1001,"主管");26             Console.WriteLine("请按任意键继续……");27             Console.ReadKey();28         }29         /// <summary>30         /// 建立员工类31         /// </summary>32         public class Employee33         {34             #region 定义属性35             public string Name { get; set; }36             public int Id { get; set; }37             public string Job { get; set; }38             #endregion39             /// <summary>40             /// 创建方法141             /// </summary>42             public void Method01(string Name)43             {44                 Console.WriteLine("我的姓名为{0}",Name);45             }46             /// <summary>47             /// 创建方法248             /// </summary>49             public void Method02(string Name,int Id,string Job)50             {51                 Console.WriteLine("我的姓名为{0},员工编号为{1},岗位是{2}。",Name,Id,Job);52             }53         }54     }55 }
View Code

显示效果:

 

四、使用方法的重载调用带参数的函数

1.重载的特点:一同三不同

  1. 方法名称一样;
  2. 方法的参数个数不一样;
  3. 参数类型不一样;
  4. 当参数的类型相同时,参数的顺序不一样;

2.注意:方法的重载一定要在同一个类中进行;否则不能称之为重载。

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork.题3 8 { 9     /*10     * 创建人:庞11     * 类型:P57 第1题12     * 时间:2017.09.0313     * 14     * **/15     public class demo0316     {17         /// <summary>18         /// 建立主入口函数19         /// </summary>20         /// <param name="args"></param>21         static void Main(string[] args)22         {23             Employee employee = new Employee();24             employee.Method01("小李");25             employee.Method02("小杨",1001,"主管");26             Console.WriteLine("请按任意键继续……");27             Console.ReadKey();28         }29         /// <summary>30         /// 建立员工类31         /// </summary>32         public class Employee33         {34             #region 定义属性35             public string Name { get; set; }36             public int Id { get; set; }37             public string Job { get; set; }38             #endregion39             /// <summary>40             /// 创建方法141             /// </summary>42             public void Method01(string Name)43             {44                 Console.WriteLine("我的姓名为{0}",Name);45             }46             /// <summary>47             /// 创建方法248             /// </summary>49             public void Method02(string Name,int Id,string Job)50             {51                 Console.WriteLine("我的姓名为{0},员工编号为{1},岗位是{2}。",Name,Id,Job);52             }53         }54     }55 }
View Code

3.入口函数为静态方法:

1 static void Main(string[] args)2         {3             //chongzai chongzai = new chongzai();4             methord("小李");5             methord(201,"小王");6             methord(502,"小胡","");7             Console.ReadKey();   8         }

所以在构造方法时也要标明为静态方法,即要用到static关键字,否则vs会报错:

1 public static void methord(string name)2         {3             Console.WriteLine("我来自T102班,我叫{0},我今年18岁,我的爱好是唱歌。", name);4         }

显示效果:

 

五、方法的重载

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6  7 namespace _9._02WeekendHomeWork.题5 8 { 9     /*10      * 创建人:庞花辉11      * 时间:2017.9.0312      * 类型:P57 第3题13      * **/14     class demo0515     {16         /// <summary>17         /// 创建入口函数18         /// </summary>19         /// <param name="args"></param>20         static void Main(string[] args)21         {22             methord01();23             Console.WriteLine("该正方形的边长为{0}", methord01(5));24             methord02();25             Console.WriteLine("该长方形的面积为{0}", methord02(5,6));26             methord03();27             Console.WriteLine("该圆的面积为{0}", methord03(2.2));28             Console.ReadKey();29         }30         /// <summary>31         /// 方法0132         /// </summary>33         public static void methord01(){34             Console.WriteLine("该正方形的边长为5");35         }36         public static int methord01(int a){37             return a * a;38         }39         /// <summary>40         /// 方法0241         /// </summary>42         public static void methord02()43         {44             Console.WriteLine("该长方形的长和宽为5,6");45         }46         public static int methord02(int b,int c)47         {48             return b * c;49         }50         /// <summary>51         /// 方法0352         /// </summary>53         public static void methord03()54         {55             Console.WriteLine("该圆的半径为2.2");56         }57         public static double methord03(double r)58         {59             return r * r * Math.PI;60         }61     }62 }
View Code

C#中圆周率的书写:

1 public static double methord03(double r)2         {3             return r * r * Math.PI;4         }

显示效果:

 

 

原创粉丝点击