StoveLeague
108
2021-09-07 09:28:38
5
132

c# Inheritance (상속)


안녕하세요. 제가 정말 빡머가리 같지만 질문 드리겠습니다.

public class aa : bb
{
}

위와 같이 선언하였을 때, aa를 통해 bb의 변수를 가지고와서 사용할 수 있나요 ?? 

즉, aa를 선언하고 aa.~~ 를 사용하려고 하는데 그 때 bb에 선언한 public {get;set;} 선언한 변수를 가지고 오고 싶습니다. 


굇수분들의 귀한 답변 기다리겠습니다. 감사합니다.

0
  • 답변 5

  • plwtcs
    911
    2021-09-07 09:33:20 작성 2021-09-07 09:33:57 수정됨

    bb의 변수에 대해서 접근지정자를 protected로 하면 aa에서만 접근 가능할거고

    public으로 하면 다른 class에서 a에 대한 객체를 생성하고 a.(b의변수명) 하면 되겠죠

    직접 해보시는게 이해가 제일 빠르실 거 같습니다 1분도 안걸리더라구요

  • StoveLeague
    108
    2021-09-07 09:55:48

    plwtcs 답변 감사합니다.

    제가 직접 구현했을 때 원하는 결과가 나오지 않아서 질문을 드리게 되었습니다. 저는 aa 객체 생성 후에 aa.b의 변수 명이 나올 줄 알았지만, 빈 깡통마냥 아무것도 나오지 않아서요 ㅠ

  • plwtcs
    911
    2021-09-07 10:20:06

    bb의 변수에 public을 붙여주셨나요??


    public class bb

    {

            public string test {get;set;} = string.Empty;

    }


    public class aa : bb

    {

    }


    public class cc

    {

            public cc()

            {

                    aa aaaaa = new aa();

                    string temp = aaaa.test;

            }

    }

  • 태현짱와우
    965
    2021-09-07 10:25:14

    질문할 때 어떤 코드를 짰는지 올려ㅅ으면 좋았을 거 같네요


  • StoveLeague
    108
    2021-09-07 16:12:52

    plwtcs 답변 감사합니다. public 붙였습니다 ㅠ WCF를 활용하고 있다보니... ㅠㅠ 

    최대한 해결해보겠습니다.


    태현짱와우 조언 감사합니다. 저도 코드를 올리고 싶지만 코드 자체가 보안이라서 올릴 수가 없네요 ㅠ

  • 로그인을 하시면 답변을 등록할 수 있습니다.