Impossibile creare un’istanza del tipo per la classe di oggetti (Java)

Ecco il codice in cui ricevo l’errore (al secondo “Killer” dopo “nuovo”).

String[] classes = new String[5];

kills[0] = "Brian Moser";
kills[1] = "James Doakes";
kills[2] = "Lila Tourney";
kills[3] = "Miguel Prado";

Killer morgan = new Killer("Dexter", 
                   "Morgan", 
                   kills,
                   4.0,
                   "Arthur Mitchell",
                   3,
                   false);

Questo è stato mi dà un po ‘ di difficoltà, per come la vedo alcun motivo per il quale la presente dichiarazione deve lavorare sulla base della mia costruttore per Killer.

Ed ecco il Killer classe:

import java.util.*;

public abstract class Killer{

public String firstName; 
public String lastName;
private String[] killList;
private double score;
private String nemesis;
private int accidents;
public boolean caught;

public Killer(String firstName, 
            String lastName, 
            String[] killList, 
            double score,
            String nemesis, 
            int accidents, 
            boolean caught) 
{
                this.firstName = firstName;
                this.lastName = lastName;
                for(int i = 0; i < 5; i++)
                    this.killList[i] = killList[i];
                this.score = score;
                this.nemesis = nemesis;
                this.accidents = accidents;
                this.caught = caught;
} //end constructor

So che questo probabilmente ha una soluzione semplice, ma ora come ora, non riesco a vedere.

Il Killer classe è astratta. Questo è il motivo, non è possibile creare un’istanza. Check out questo per maggiori informazioni su classi astratte in Java.
Grazie, siete sulla strada giusta.
Modifica new Killer("Dexter", "Morgan", kills, 4.0, "Arthur Mitchell", 3, false){} e improvvisamente il lavoro.
non è che si sporca? 🙂
Classe di nome Utente, ma un metodo di costruzione è Assassino. Mi manca qualcosa?

OriginaleL’autore Michael Anthony Leber | 2013-03-01

2 Replies
  1. 4

    seguenti sono alcuni dei principali punti sulle classi astratte

    1. Una classe astratta è una classe che viene dichiarata astratta.
    2. Si può o non può includere metodi astratti.
    3. Classi astratte non possono essere istanziato, ma possono essere una sottoclasse di
    4. Classi astratte non contiene alcun costruttore

    nel tuo caso c’è una classe astratta dichiarato come public abstract class Killer così la sua dichiarazione definisce che è pubblico, classe astratta con nome come Killer così come dichiarato in precedenza che una classe Astratta non può essere istanziata quindi è necessario sottoclasse o rimuovere abstract parola chiave per ottenere la sua istanza per ulteriori leggi oracle docs classi astratte

    OriginaleL’autore Zahid Ali

  2. 1

    Non siamo in grado di creare un’istanza di classe astratta. Le sue caratteristiche di classe astratta. Qui è astratto.

    OriginaleL’autore Jwalin Shah

Lascia un commento