Jump to content

C# POO - Lista com mais de um datatype


PauLinhu221

Recommended Posts

PauLinhu221

Boas, estou a tentar fazer uma lista para um inventário simples, mas deparei-me com o problema de que a Lista tem que levar um tipo. Sendo que tenho uma classe para cada item, como faria? Thanks in advance. (O código abaixo é um exemplo abstrato para o que pretendo, n foi compilado)

//Inventory.cs

public class Inventory {
    
    public List<Item> itemList;

    public Inventory() {
        
        itemList = new List<Item>();
    }
}


//Keyboard.cs

public class Keyboard {

  public int keys;

  public Keyboard() {
    
  	keys = 67;
    
  }
}

//Monitor.cs

public class Monitor {
  
  public int refreshRate;
  
  public Monitor() {
    
  	refreshRate=60;
    
  } 
}

 

Edited by PauLinhu221
Link to post
Share on other sites
PauLinhu221
Posted (edited)
22 minutos atrás, bruno1234 disse:

Coloca as classes a extenderem de Item

public class Item {

    public class Keyboard : Item {
        
        public int keys;

        public Keyboard() {

            keys=67;

        }
    }
  
  	public class Monitor : Item {
        
        public int refreshRate;

        public Monitor() {

            refreshRate=60;

        }
    }
}

Assim?

Edited by PauLinhu221
Link to post
Share on other sites
antseq
14 horas atrás, PauLinhu221 disse:

Assim?

Penso que seria melhor assim e em ficheiro separados:
public class Item { ... }
public class Keyboard : Item { ... }
public class Monitor : Item { ... }

Se tiveres propriedades comuns (id, serial, brand, category, color, size, ...) a todos os "Items" deves colocar em "Item".

cps,

Link to post
Share on other sites
PauLinhu221
1 hora atrás, antseq disse:

Penso que seria melhor assim e em ficheiro separados:
public class Item { ... }
public class Keyboard : Item { ... }
public class Monitor : Item { ... }

Se tiveres propriedades comuns (id, serial, brand, category, color, size, ...) a todos os "Items" deves colocar em "Item".

cps,

Certo, e com a lista criada como acederia por exemplo á propriedade keys de um objeto do tipo Keyboard instanciado? Thx

Link to post
Share on other sites
M6

Podes criar uma interface com uma assinatura que todas as tuas classes são obrigadas a respeitar.
Por exemplo, todas implementaria a propriedade "keys".
 

10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.