انجمن های تخصصی علوم رایانه و هنرهای دیجیتال
  • صفحه اصلی
  • جستجو
  • لیست اعضا
  • تقویم
  • راهنما




سی جی آریا

رسانه تخصصی آموزش هنرهای دیجیتال



ورود به انجمن ثبت نام کنید
ورود
نام کاربری:
گذرواژه‌: گذرواژه‌تان را فراموش کرده‌اید؟
 

Home انجمن های تخصصی علوم رایانه و هنرهای دیجیتال رایانه برنامه نویسی | طراحی وب برنامه نویسی c# | سی‌شارپ تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication

امتیاز موضوع:
  • 2 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
حالت خطی
تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication
Mohsen Omidvar آفلاین
مدیر ارشد
*******
ارسال‌ها: 1,259

موضوع‌ها: 634
تاریخ عضویت: Apr 2012
اعتبار: 198
سپاس ها 400
سپاس شده 2999 بار در 869 ارسال
#15
07-06-2013، 01:57 PM
برای تمرین یک کلاس انتزاعی قبل از کلمه کلیدی class کلمه abstract را می نویسیم سپس برای تعریف هر تابع مجازی باید قبل از تعریف هر تابع از کلمه abstract استفاده کنیم .زمانی که در کلاسهای فرزند به ریختهای مختلف توابع مجازی را تعریف می کنیم باید قبل از تعریف تابع از کلمه override استفاده کنیم.
مثال)کلاسی به نام شکل تعریف کنید که الف )در این کلاس بتوان کلاسهای مستطیل،دایره و مربع را از آن ارث ببرد(توابع مساحت و محیط به صورت مجازی تعریف شود)
ب) مساحت و محیط هر شکل را به طور جداگانه محاسبه و نمایش دهد.
کد:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace shape
{
    class Program
    {
        abstract class shape
        {
            public abstract void mohit();
            public abstract void masahat();
            public abstract void input();
        };
        class rect : shape
        {
            private int x, y;
            public override void mohit()
            {
                int m = (x * y) * 2;
                Console.WriteLine("Mohit mostatil = "+m.ToString());
            }
            public override void masahat()
            {
                int s = x * y;
                Console.WriteLine("Masahat mostatil = "+s.ToString());
            }
            public override void input()
            {
                x = Convert.ToInt32(Console.ReadLine());
                y = Convert.ToInt32(Console.ReadLine());
            }

        };
        class circle:shape
        {
            private double r;
            public override void  masahat()
            {
                double s = r * r * 3.14;
                Console.WriteLine("Masahat daiere = "+s.ToString());
            }
            public override void  mohit()
            {
                double m=2*3.14*r;
                Console.WriteLine("Mohit daiere = "+m.ToString());
            }
            public override void  input()
            {
                r=Convert.ToDouble(Console.ReadLine());
            }
        }
        class moraba:shape
        {
            private int x;
            public override void  masahat()
            {
                int s=x*x;
                Console.WriteLine("Masahat Moraba = "+s.ToString());
            }
            public override void mohit()
            {
                int m=x*4;
                Console.WriteLine("Mohit Moraba = " + m.ToString());
                Console.WriteLine(m.ToString());
            }
            public override void  input()
            {
                x=Convert.ToInt32(Console.ReadLine());
            }
        }


        static void Main(string[] args)
        {
            shape s;
            rect r;
            r=new rect();
            s=r;
            s.input();
            s.masahat();
            s.mohit();
            circle c;
            c=new circle();
            s=c;
            s.input();
            s.masahat();
            s.mohit();
            moraba m;
            m=new moraba();
            s=m;
            s.input();
            s.masahat();
            s.mohit();
            Console.ReadKey();
        }
    }
}
 *شما قادر به دیدن لینک ها نیستید ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید*
خورشید باش که اگر خواستی بر کسی نتابی نتوانی.
ارسال‌ها
پاسخ
« قدیمی‌تر | جدیدتر »


پیام‌های داخل این موضوع
تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 01-03-2013، 12:25 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 01-03-2013، 12:31 PM
تابع سازنده - توسط Mohsen Omidvar - 05-03-2013، 05:08 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 05-03-2013، 05:22 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 05-03-2013، 05:46 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 05-03-2013، 06:05 PM
ارث بری و روشهای ارث بری - توسط ali_aot - 20-04-2013، 08:53 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط Mohsen Omidvar - 15-05-2013، 06:39 PM
کلاس پشته - توسط Mohsen Omidvar - 15-05-2013، 07:02 PM
تابع مخرب - توسط Mohsen Omidvar - 15-05-2013، 07:32 PM
RE: تمرینهای مربوط به کنسول اپلیکیشن ConsoleApplication - توسط ali_aot - 21-05-2013، 11:55 AM
سازنده ها در وراثت - توسط Mohsen Omidvar - 07-06-2013، 12:08 PM
استفاده از توابع همنام کلاس پایه در کلاس فرزند - توسط Mohsen Omidvar - 07-06-2013، 12:18 PM
چند ریختی(پلی مورفیسم) - توسط Mohsen Omidvar - 07-06-2013، 01:10 PM
چند ریختی(پلی مورفیسم) - توسط Mohsen Omidvar - 07-06-2013، 01:57 PM

  • مشاهده‌ی نسخه‌ی قابل چاپ
پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 5 مهمان
مکان تبلیغ شما
تمامی حقوق این سایت مربوط به انجمن های تخصصی علوم رایانه و هنرهای دیجیتال میباشد