parth cool Ответов: 1

Как исправить эту ошибку C#, потому что я новичок


1.	using System;
2.	namespace Examples
3.	{
4.		 class Program
5.	{
6.		public static void Main(string[]args)
7.		{
8.			Laptop Lenovo=new Laptop("Lenovo");
9.			Lenovo.Price("$");
10.			Lenovo.Processor("i");
11.			Lenovo.Ram(2);
12.			Lenovo.HDD(500);
13.			
14.			Laptop Dell=new Laptop("Dell");
15.			Dell.Price("$");
16.			Dell.Processor("i");
17.			Dell.Ram(4);
18.			Dell.HDD(1);
19.			
20.			Laptop Sony=new Laptop("Sony");
21.		    Sony.Price("$");
22.			Sony.Processor("i");
23.			Sony.Ram(8);
24.			Sony.HDD(1);
25.			
26.			
27.		}
28.	}
29.	class Laptop:LaptopBase
30.	{
31.		public  LaptopBase(String LaptopName):base(LaptopName)
32.		{
33.			this.LaptopBase=LaptopName;
34.		
35.		  	} 
36.		class LaptopBase
37.		{
38.			public LaptopBase(String LaptopName)
39.			{
40.				Console.WriteLine(" "+LaptopName);
41.			}
42.		
43.		
44.		public void Price()
45.		{
46.		Console.WriteLine("$"+ 1000,"$"+2000,"$"+3000);
47.		}
48.	public void Processor()
49.	{
50.	Console.WriteLine("i"+3,"i"+5,"i"+7);
51.	}
52.		public void Ram()
53.		{
54.			Console.WriteLine(2+"GB",4+"GB",8+"GB");
55.		}
56.		public void HDD()
57.		{
58.			Console.WriteLine(500+"GB",1+"TB",1+"TB");
59.		}
60.	}
61.			}
62.	}

[edit]добавлен блок кода - OriginalGriff[/edit]

Что я уже пробовал:

main.cs(31,10): ошибка CS1520: класс, структура или метод интерфейса должны иметь возвращаемый тип

1 Ответов

Рейтинг:
12

OriginalGriff

Посмотрите на сообщение об ошибке и на свой код:

main.cs(31,10): error CS1520: Class, struct, or interface method must have a return type

main.cs(31,10):
Это означает, что ошибка находится в строке 31, столбец 10, файла "main.cs"
Так что посмотри на эту строчку:
29.	class Laptop:LaptopBase
30.	{
31.		public  LaptopBase(String LaptopName):base(LaptopName)
32.		{
33.			this.LaptopBase=LaptopName;

Это конструктор, но это конструктор базового класса, а не реального класса. В результате вы получите эту ошибку:
error CS1520: Class, struct, or interface method must have a return type
Потому что ты можешь только создайте конструктор в классе, на который он ссылается.
Вероятно, вам нужно объявить Laptop конструктор, а не а LaptopBase - что бы избавиться от этой ошибки, но.....
1) LaptopBase-это класс, а не переменная, поэтому вы не можете присвоить ей строку.
2) объявление базового класса как части класса, производного от него, является ... ГМ ... странным. Очень странный. Как вы ожидаете, что другие классы будут легко выводиться из LaptopBase, если это часть класса Laptop?

Я думаю, вам нужно переосмыслить то, что вы пытаетесь сделать здесь, и перечитайте свои заметки о курсе - этот код очень похож на школу кодирования "угадай и надейся, что это сработает", и это не очень хорошая стратегия дизайна!


parth cool

Огромное спасибо!!!

OriginalGriff

Всегда пожалуйста!