2017-04-24 3 views
-3

클래스의 Object 속성을 설정할 수 있습니까?

class c2{ 
    public string Name; 
    public int RollNo; 
    public c2(string Name , int RollNo){ 
     this.Name = Name; 
     this.RollNo = RollNo; 
    } 

    private c2 obj1; 
    public c2 obj{ 
     get 
     { 
      return obj1; 
     } 
     set{ 
      obj1=value; 
     } 
    } 
    public void show(){ 
     Console.WriteLine(""+obj1.Name+" "+obj1.RollNo); 
    } 
} 
public class Program 
{ 
    public static void Main(string[] args) 
    { 
     //Your code goes here 
     c2 objNew = new c2("Test",12); 
     objNew.obj = objNew; 
     objNew.show(); 

    } 
} 

OUTPUT 아래 예와 같이 class c2의 목적을 가지고 class Program 한 I : 위의 코드에서

시험 12

class c2이다 obj1 및 전용 기준을 가지고 getset 에서 개체 obj에 의해. 0123의 도움으로 메모리가 할당되지 않았으므로 물리적으로 존재하지 않으므로 obj 및 obj1에 할당되는 값은 얼마입니까?연산자. 그들이 그런 식으로 선언하는 경우

+0

처럼 intilize 수처럼 할 수 oleksii의 대답에 속성을 설정하는 샘플을 얻었다 질문. '클래스의 객체의 속성'은 무엇입니까? –

+0

이 하나를 확인하십시오, 도움이 될 수 있습니다 http://stackoverflow.com/questions/4142867/what-is-difference-between-property-and-variable-in-c-sharp – bradbury9

+0

속성은 인스턴스의 구성원입니다 클래스 ('static'이 아닌 한). 필드와 메소드에 대한 동일한 appiles. 속성은 필드와 아무 관련이 없습니다. 특히 속성은 필드의 확장이 아닙니다. – HimBromBeere

답변

1

은 예,은, 예를

class C1{ 
    public C2 Obj {get;set;} 
} 

class C2{} 

public class Program 
{ 
    public static void Main() 
    { 
     C1 c1 = new C1(); 
     C2 prop1 = c1.Obj; 
     c1.Obj = new C2(); 
    } 
} 
0

위해 그들은 나, 설정 얻을 수 있습니다.

읽기 전용 특성 : public C2 obj {get;}

쓰기 및 읽기 특성 public C2 obj {get;set;}

당신은 public C2 obj {get;private set;} 같은 속성도 멋진 일을하거나 setter 메소드에 지정 유효성 검사 로직을 추가 할 수 있습니다.

당신은

0

예이 또한

class Car 
{ 
    public string Name { get; set; } 
    public Color Color { get; set; } 
    public CarManufacturer Manufacturer { get; set; } 
} 

Car car = new Car(); 
car.Name = "Corvette"; 
car.Color = Color.Yellow; 
car.Manufacturer = new CarManufacturer(); 
car.Manufacturer.Name = "Chevrolet"; 
car.Manufacturer.Country = "USA"; 

당신이하는지 명확하지이

Car car = new Car { 
       Name = "Chevrolet Corvette", 
       Color = Color.Yellow, 
       Manufacturer = new CarManufacturer { 
        Name = "Chevrolet", 
        Country = "USA" 
       } 
      }; 
관련 문제