2016-11-29 3 views
0

여러 오류가 발생하지만 이유를 알 수 없습니다. 오류는 GetArea 메소드 다음에 도입됩니다. 이 선언 인 것처럼초기화 생성자는 어떻게 소개합니까? C# CS0236

namespace Lesson02 
{ 
    class Rectangle 
    { 
     static void Main(string[] args) 
     { 

     } 

     private double length; 
     private double width; 
     public Rectangle(double l, double w) 

     { 
      length = l; 
      width = w; 

     } 

     public double GetArea() 

     { 
      return length * width; 
     } 

     public Rectangle rect = new Rectangle(10.0, 20.0); 
     double area = rect.GetArea(); 
     Console.WriteLine("Area of Rectagle: {0}", area); 
+1

'Console.WriteLine ("Rectagle의 지역 : {0}", 영역)'방법이 –

+0

완전한 클래스 또는 그것의 컴파일 가능한 부분을 적어주세요 * 내 *되어야한다. 그리고 당신은 exat error를 얻었습니다. –

+0

나는 모든 것을 완벽하게 작성했지만 나는 그 질문의 제목에 오류를 포함시켰다. 당신의 대답을 가져 주셔서 감사합니다. 그러나 나는 Console.WriteLine을 메서드의 "외부"에서 본 시간이 거의 확실합니다. – CoadA

답변

0

당신은 클래스 범위 내에서 실행

Console.WriteLine("Area of Rectagle: {0}", area); 

을 넣을 수 없습니다. Main 방법으로 이동 : 주석에서 언급 한 바와 같이

namespace Lesson02 
{ 
    class Rectangle 
    { 
     // Method, here we execute 
     static void Main(string[] args) 
     { 
      // Executions are within the method 
      Rectangle rect = new Rectangle(10.0, 20.0); 
      double area = rect.GetArea(); 
      Console.WriteLine("Area of Rectagle: {0}", area); 
     } 

     // Declarations 
     private double length; 
     private double width; 

     public Rectangle(double l, double w) 
     { 
      length = l; 
      width = w; 
     } 

     public double GetArea() 
     { 
      return length * width; 
     } 
    } 
} 
+0

도움을 주셔서 감사합니다. – CoadA

0

, 당신은 프로그램 코드와 혼합 클래스 본문 있습니다. 모든 것을 하나의 클래스에 포함시키는 것도 나쁜 생각입니다.

귀하의 Rectangle 클래스는 분리되어야한다 :

public class Rectangle 
{ 
    private double length; 
    private double width; 

    public Rectangle(double l, double w) 
    { 
     length = l; 
     width = w; 

    } 

    public double GetArea() 
    { 
     return length * width; 
    } 
} 

그리고 별도의 프로그램 코드 : 공공 그렇지 않으면 공공 사각형 RECT = 새로운 Rectangle (10.0 변경으로

public class Program 
{ 
    static void Main(string[] args) 
    { 
     Rectangle rect = new Rectangle(10.0, 20.0); 
     double area = rect.GetArea(); 
     Console.WriteLine("Area of Rectagle: {0}", area); 
    } 
} 
+0

감사합니다. 정말 감사. – CoadA

0

어느 클래스 사각형을, 20.0을); as Rectangle rect = 새 사각형 (10.0, 20.0);

public class Rectangle 
    { 

     private double length; 
     private double width; 
     public Rectangle(double l, double w) 
     { 
      length = l; 
      width = w; 
     } 

     public double GetArea() 
     { 
      return length * width; 
     } 

    } 
    static void Main(string[] args) 
    { 
     Rectangle rect = new Rectangle(10.0, 20.0); 
     double area = rect.GetArea(); 
     Console.WriteLine("Area of Rectagle: {0}", area); 
    } 
+0

도움 주셔서 감사합니다. – CoadA