C#面向对象程序设计课程实验四:实验名称:C#面向对象程序设计基础

简介: C#面向对象程序设计课程实验四:实验名称:C#面向对象程序设计基础

a899657621ce41f4a90613d4780fd333.jpg

实验内容:C#面向对象程序设计基础



012ff0c8e1bf46ed93925fb9d0bce07a.jpg


一、实验目的


  • (1)掌握 C#类的概念和基本组成,学会设计类,掌握类的使用方法;
  • (2)熟悉字段与方法的使用;
  • (3) 掌握四种访问修饰符;
  • (4)熟悉属性的定义与使用;
  • (5)给程序加上注释,使得其清晰可读;


二、实验环境


Microsoft Visual Studio 2008


三、实验内容与步骤


3.1.1、实验内容


编写控制台应用程序,模拟简单的计算器。定义名为 Cal 的类,其中包含两个私 有字段 n1 和 n2。编写构造方法,为两个字段初始化。再为该类定义加(Addition)、 减(Substraction)、乘(Multiplication)、除(Division)4 个公有成员方法,分别对其 中两个成员变量执行加、减、乘、除的运算。在 Main( )方法中创建 Cal 类的对象,调 用各个方法,并显示计算结果。


3.1.2、实验步骤


1、 实验的程序设计如下:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 实验4_1_
{
    class Cal
    {
        private double digit1;       //定义两个数字字段
        private double digit2;
        public Cal(double Digit1, double Digit2)   //定义构造方法
        {
            digit1 = Digit1;
            digit2 = Digit2;
        }
        public double Add()    //定义加减乘除的方法
        {
            return digit1 + digit2;
        }
        public double Sub()
        {
            return digit1 - digit2;
        }
        public double Mul()
        {
            return digit1 * digit2;
        }
        public double Div()
        {
            return digit1 / digit2;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            double digit1 = 10;
            double digit2 = 2;
            Cal digit = new Cal(digit1, digit2);   //成绩Cal对象digit
            Console.WriteLine("两数分别为:{0},{1}", digit1, digit2);
            Console.WriteLine();
            Console.WriteLine("两数相加得:");
            Console.WriteLine("{0}", digit.Add());     //(digit.Add())通过类的对象来访问类的方法
            Console.WriteLine("两数相减得:");
            Console.WriteLine("{0}", digit.Sub());
            Console.WriteLine("两数相乘得:");
            Console.WriteLine("{0}", digit.Mul());
            Console.WriteLine("两数相除得:");
            Console.WriteLine("{0}", digit.Div());
            Console.ReadLine();
        }
    }
}


2、 实验的运行效果如下:



42d06d0e5948428b938625d06e3897c2.jpg


3.2.1、实验内容


请定义一个交通工具 Vehicle 类,其中包含的属性有速度(Speed)(只读)、体积 (Size()可读写)等;方法有移动 Move()、设置速度 SetSpeed(int speed)、加速 SpeedUp(), 减速 SpeedDown( )等。最后,在 Main( )方法中实例化一个交通工具对象,初始化 Size 的值,通过方法给它初始化 Speed,并且通过输出方法打印出来。另外,调用加速、 减速的方法对速度进行改变。


3.2.2、实验步骤


实验的程序设计如下


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 实验4_2_
{
    class Vehicle
    {
        private int CarSpeed;        //定义字段
        private int Volume;
        public Vehicle(int a)    //构造方法
        {
            Volume = a;
        }
        public int Speed        //速度属性
        {
            get
            {
                return CarSpeed;
            }
        }
        public int Size          //体积属性
        {
            get
            {
                return Volume; 
            }
            set
            {
                Volume = value;
            }
        }
        public void Move()     //定义Move方法
        {
        }
        public void SetSpeed(int a)   //定义SetSpeed方法
        {
            CarSpeed = a;
        }
        public void SpeedUp(int a)        //定义SpeedUp方法
        {
            CarSpeed += a;
        }
        public void SpeedDown(int a)      //定义SpeedDown方法
        {
            CarSpeed -= a;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            int Volume = 5;    //设置体积
            int CarSpeed = 10; //设置初始速度
            int Change = 1;    //速度的改变量
            Vehicle Car = new Vehicle(Volume);    //创建Vehicle类的对象
            Car.SetSpeed(CarSpeed);
            Console.WriteLine("size={0},speed={1}", Car.Size ,Car.Speed);
            Car.SpeedUp(Change);     //对速度进行加速
            Console.WriteLine("size={0},speed={1}", Car.Size, Car.Speed);
            Car.SpeedDown(Change);   //对速度进行减速
            Console.WriteLine("size={0},speed={1}", Car.Size, Car.Speed);
            Console.ReadLine();
        }
    }
}

实验的运行效果如下:


cc01a0d53bf74762b7aa8ff1e7987e67.jpg


image.png


四、实验总结


  • 1、通过实验,掌握 C#类的概念和基本组成,学会设计类,掌握类的使用方法。
  • 2、本次实验让自己对属性的掌握又加深了一步
  • 3、掌握了类的构造方法、对象调用方法的应用

ceeddd62041549d99d35e90d939d605c.jpg


相关文章
|
7月前
|
关系型数据库 MySQL C#
C# winform 一个窗体需要调用自定义用户控件的控件名称
给用户控件ucQRCode增加属性: //二维码图片 private PictureBox _pictureBoxFSHLQrCode; public PictureBox PictureBoxFSHLQrCode {   get { return _pictureBoxFSHLQrCode; }   set { this.pictureBoxFSHLQrCode = value; } } 在Form1窗体直接调用即可: ucQRCode uQRCode=new ucQRCode(); ucQRCode.PictureBoxFSHLQrCode.属性= 要复制或传给用户控件上的控件的值
37 0
|
8月前
|
自然语言处理 Java 编译器
C#OOP之一面向对象简介
C#OOP之一面向对象简介
41 0
|
2月前
|
存储 开发框架 安全
C# .NET面试系列二:面向对象
<h2>面向对象 #### 1. 什么是构造函数? 构造函数(Constructor)是一种特殊类型的方法,它在创建类的实例(对象)时被调用,用于初始化对象的状态。构造函数的名称必须与包含它的类的名称相同,并且没有返回类型。 主要特点和用途包括: 初始化对象: ```c# 构造函数主要用于初始化类的实例。当使用 new 关键字创建类的对象时,构造函数会被调用,确保对象在使用之前处于一个合适的状态。 ``` 与类同名: ``` 构造函数的名称必须与包含它的类的名称完全相同。 ``` 没有返回类型: ```c# 构造函数没有返回类型,甚至不能声明 void。它的目的是初始化对象
48 0
|
8月前
|
C# 数据库 Windows
C# OOP程序设计目录
C# OOP程序设计目录
24 0
|
5月前
|
编译器 C# Windows
C#高级程序设计Type类
C#高级程序设计Type类
30 0
|
5月前
|
SQL 关系型数据库 MySQL
C#程序设计案例开发教程
C#程序设计案例开发教程
50 0
|
7月前
|
C# Windows
[闻缺陷则喜]C#程序集名称
[闻缺陷则喜]C#程序集名称
|
9月前
|
设计模式 算法 C#
28【WinForm】C#实现商场收银软件,从面向过程到面向对象,设计模式的应用
实现商场收银系统从简单的面向过程到面向对象的演变。
86 0
|
10月前
|
数据可视化 程序员 C#
C# 面向对象三大特性
C# 面向对象三大特性
69 0
|
10月前
|
C#
【C#视频】面向对象、数据类型
【C#视频】面向对象、数据类型