NetRunner: Java Mastery Guide 1.0 Help

Herança

Conceito Base

Herança permite que uma classe herde atributos e métodos de outra, estabelecendo uma relação "é um" entre classes.

herda de

herda de

Netrunner

Hacker

CyberOperator

Implementação Básica

public class CyberOperator { protected String codename; protected int accessLevel; public CyberOperator(String codename) { this.codename = codename; this.accessLevel = 1; } public void accessNetwork() { System.out.println("Basic network access"); } } public class Hacker extends CyberOperator { private int hackingSkill; public Hacker(String codename) { super(codename); this.hackingSkill = 50; } @Override public void accessNetwork() { System.out.println("Advanced network access"); } }

Tipos de Herança

Herança Simples

public class Netrunner extends Hacker { private String[] cyberdeckModules; public Netrunner(String codename) { super(codename); this.cyberdeckModules = new String[]{"Basic"}; } }

Hierarquia de Classes

  • Superclasse (pai)

  • Subclasse (filho)

  • Cadeia de herança

Palavra-chave super

public class ICEBreaker extends Netrunner { public ICEBreaker(String codename) { super(codename); // Chama construtor pai } @Override public void accessNetwork() { super.accessNetwork(); // Chama método pai System.out.println("Breaking ICE protocols"); } }

Boas Práticas

  1. Composição vs Herança

    • Prefira composição

    • Evite hierarquias profundas

    • Mantenha coesão

  2. Princípio LSP

    • Substituição de Liskov

    • Comportamento consistente

    • Contratos respeitados

  3. Documentação

    • Documente extensões

    • Explique sobreposições

    • Defina contratos

Exercícios Práticos

// Implemente: public class SecuritySystem { // Base para sistema de segurança } public class FirewallSystem extends SecuritySystem { // Sistema específico de firewall } public class IntrusionDetection extends SecuritySystem { // Sistema de detecção }

Próximos Passos

Polimorfismo

26 June 2025