Şimdi Ara

c# hakkında 3

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
11
Cevap
0
Favori
357
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Aşağıdaki kodda hata alıyorum nasıl düzeltebileceğimi söyler misiniz ?

    class MYCLASS
    {

    public PROGRAM MYPROPERTY { get; }
    static void Main(string[] args)
    {
    MYCLASS A = new MYCLASS();
    A.MYPROPERTY.YAZ("SADASD");
    }
    }
    class PROGRAM
    {
    public void YAZ(String STR)
    {
    Console.WriteLine(STR);

    }

    }



  • Arkadaşım, java bölümüne C# soruyorsun. C# bölümünde sorarsan hemen vereceklerine inanıyorum.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • StGuard S kullanıcısına yanıt
    c# forumunu bulamadım nerede acaba ?
  • main ve classların iç içe : ) nasıl başardın. hem class ın içindeyken aynı classtan nesneyi üretmeyi de kim gösterdi.ve de ayrıca property.metot şeklinde çağırmayı da nereden aldın ? böyle birşey görmedim.önce propertyine değer ata sonra metot ile çağır.yeni gördüm myproperty özelliği program class ' ı döndürüyor geriye.ama sen buna string ifade ile birşeyler yazmaya çalışmıssın yaz metodunu sildiğini düşünürsek tabi.açıkçası ne yapmak istediğin anlaşılmıyor.myproperty özelliğinde set bloğu olmadığından bir atama da yapamazsın.düzeltmenin tek yolu hepsini sil ve ne yapmak istediğini yaz.
  • .Netcii kullanıcısına yanıt
    yapmak istediğim şuydu :
    Console.Out.WriteLine ın yani bütün bu ifadenin bir prototipini oluştumak yani bir sınıftan bir property tanımlayarak o propertyden bir metot'a ulaşmak. bunu basit bir şekilde nasıl modellerim ?
  • MSYYSM M kullanıcısına yanıt
    Tabi ki C# forumu yok fakat C++ / Delphi / VB forumu varhttps://forum.donanimhaber.com/forumid_251/tt.htm ve oraya gönderilmelidir.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • public class aa
    {

    private string gidecekdeger; -- değişken

    public string nesne -- string dödn
    {
    get { return metot(gidecekdeger) } -- önce set ile gidecekdeger ayarlarsın.sonra get ile metoda string gönderip yeni string i geri gönderirsin.

    set { gidecekdeger=value }
    }



    public string metot(string gelen)
    {
    return 'string ifade geri dönüyor'+gelen;
    }
    }

    kafadan yazıyorum hata çıkarsa yazabilirsin.denerim o zaman
  • .Netcii kullanıcısına yanıt
    yarrattığın kodda başka bir class'tan instance yaratıp property'sine ulaşabiliyorum ama metot'a ulaşamıyorum
    kendim bir çözüm bulum senin koddan örnek alarak ama doğr bir kodlama sitili mi bilmiyorum bir bak sitersen
     
    namespace asdasdasdasd
    {
    public class aa
    {
    public aa nesne
    {
    get {
    aa b = new aa();
    return b; }
    }
    public string metot(string gelen)
    {
    return "int tipinden ifade geri dönüyor" + gelen;
    }
    }

    }



     
    namespace asdasdasdasd
    {
    class çağır
    {
    static void Main(string[] args)
    {
    aa x = new aa();
    Console.WriteLine(x.nesne.metot("56551626262"));
    }
    }
    }




  • namespace ConsoleApplication1 
    {
    class Program
    {
    static void Main(string[] args)
    {
    dd nesne = new dd();
    nesne.d();
    }
    }


    class dd
    {
    public void d ()
    {

    }
    }
    }


    bende çalışıyor.usingleri eksik yapmadığından emin ol ve ayrıca ulaşmaya çalıştığın metodun public olduğundan emin ol.başına public yazmazsan default private değerini alır
  • Sorun MYPROPERTY'nin null olmasından kaynaklanıyor. NullReferenceException alıyor olman lazım. MYCLASS tipindeki nesneni oluşturduktan sonra bir yerde o property'i set etmen lazım (readonly olduğu için [{get;} şeklinde tanımladığın property'ler "readonly" olarak geçer], yalnızca tanımladığın sınıfın constructor'ında set edebilirsin).

    Minimal bir değişiklikle çözmek için, MYCLASS'ın içine şöyle bir constructor ekleyebilirsin mesela:

    public MYCLASS() 
    {
    MYPROPERTY = new PROGRAM();
    }
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.