PDA

View Full Version : سوال: نمونه سازی از کلاس Program



irpersian20
پنج شنبه 11 تیر 1394, 12:25 عصر
سلام
این کلاس Program اگر چیزی قبل ش نزاریم، static هست؟ و public?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace Test
{

class Program
{
static int j = 20;
public static void Main()
{
int j = 30;
Console.WriteLine(j);
Console.WriteLine(Program.j);
//return 0;
}
}
}

alireza264
پنج شنبه 11 تیر 1394, 12:47 عصر
سلام
class Program دیگه استاتیک نیست و میشه ازش نمونه تعریف کرد و از فیلدهاو متد هاش استفاده کرد



class Program
{
public int x { set; get; }
static int j = 20;
public static int i = 20;



public static void Main()

{
int j = 30;
Console.WriteLine(j);
Console.WriteLine(Program.j);
//return 0;
}
}





نحوه استفاده

private void Form1_Load(object sender, EventArgs e)
{
Program prg = new Program();
prg.x = 0;

Program.i = 0;

}

irpersian20
پنج شنبه 11 تیر 1394, 12:56 عصر
ممنون
درسته استاتیک نیست اما
Console.WriteLine(Program.j);
چطور است بدون ساختن نمونه از کلاس Program به یک متغیر اون دسترسی پیدا کردم؟

alireza264
پنج شنبه 11 تیر 1394, 15:30 عصر
چون فیلد j از نوع static هست و توی نمونه ساخته شده نمیاد یا به عبارت دیگه ازش نمونه ساخته نمیشه و دسترسی بهش باید به همراه نام کلاس باشه