2010-03-07 1 views
0

У меня есть куча типов (например, LargePlane, SmallPlane), которые могут быть в этой коллекции, которую я создал, как мне печатать, как LargePlane? Я пробовал как typeOf() и прочее, но он не работает. В пределах как toString()? Поэтому, когда я вывожу коллекцию, она указывает, какой тип она есть.Описания типов вопрос

+0

Любой конкретный язык? –

+0

На каком языке стоит вопрос? На самом деле это блокиратор, чтобы ответить на этот вопрос. – Romain

+0

О, извините, Java! – user288245

ответ

0

Вы можете либо реализовать интерфейс или продлить что-то вроде класса «Самолет»

public class LargePlane implents IPlane { 

    public String toString() { 
    // build return string here 
    } 

} 


public interface IPlane { 
    public String toString(); 
} 
4

Использование .getClass().getName()

Следующий пример использует объект класса для печати имя класса объекта:

void printClassName(Object obj) 
{ 
    System.out.println("The class of " + obj + 
         " is " + obj.getClass().getName()); 
} 

Для получения более подробной информации, взгляните на JavaDoc for Class.

+2

getSimpleName() тоже хорошо, потому что вы получаете имя класса (Plane) только по сравнению с полным именем класса (com.air.Plane и т. Д.), Которое вы получите с помощью getName(). –

Смежные вопросы