2014-02-14 4 views
0

Я работаю с файлами datatables, и в то же время я использую Triple datastores (Jena TDB) вместо традиционных баз данных. Я собираюсь создать объект, например, пример демонстрационного примера. класса автомобилей общественного {Создайте метод с неизвестным числом и типом аргументов в java

private String model; 
    private int year; 
    private String manufacturer; 
    private String color; 

    public Car(String model, int year, String manufacturer, String color) { 
      this.model = model; 
      this.year = year; 
      this.manufacturer = manufacturer; 
      this.color = color; 
    } 

    public String getModel() { 
      return model; 
    } 

    public void setModel(String model) { 
      this.model = model; 
    } 

    public int getYear() { 
      return year; 
    } 

    public void setYear(int year) { 
      this.year = year; 
    } 

    public String getManufacturer() { 
      return manufacturer; 
    } 

    public void setManufacturer(String manufacturer) { 
      this.manufacturer = manufacturer; 
    } 

    public String getColor() { 
      return color; 
    } 

    public void setColor(String color) { 
      this.color = color; 
    } 

}

здесь все ясно и объект автомобиля имеет определенные аргументы, как модель, год, ... однако в моей программе на основе выбора пользователя из меню, у меня есть вызывать совершенно разные объекты с различными свойствами в качестве аргументов и делать то же, что показано в витрине. Я совершенно новый в java, и я действительно смутился, как я могу решить эту проблему. В качестве примера моим программным объектом может быть компания с аргументами (имя, адрес, адрес электронной почты, тел., ...), или это может быть машина с совершенно разными свойствами, такими как (имя, модель, дата выпуска, характеристики и т. Д.).).

Заранее благодарим за ваши ответы.

+0

Что должен делать клиент (код вызова) с этими объектами? –

+0

1. просто отсортируйте объект с различными свойствами и верните их пользователю. 2. Позже алгоритм использует эти свойства, чтобы выбрать наиболее подходящий объект в соответствии с предоставленными критериями. Но пока я просто хочу назвать эти объекты в datatable и отсортировать их !! – user3265533

+0

Вы думали о создании интерфейса, который могут реализовать все эти объекты? Затем вы можете рассматривать все объекты как один и тот же тип. Может быть, он содержит метод setField (String fieldName, Object value), а объект обрабатывает это поле. –

ответ

1

Не совсем понятно объяснение, которое вы предоставили. Я могу дать вам один ответ на ваш заголовок: Создать метод с неизвестным числом и типом аргументов в java

Вы можете использовать Java args вместе с классом Object.

package com.misc; 

public class NNumberOfObj { 
    public static void acceptNNumberOfAnyTypeofObjects(Object... args) { 
     System.out.println("Total objects are: " + args.length); 
     //Your further implementation goes here. 
    } 
    public static void main(String[] args) { 
     String s = new String("Nikhil"); 
     Integer i = 10; 
     Employee emp = new Employee(10, "Kunal"); 
     acceptNNumberOfAnyTypeofObjects(s, i, emp); 
    } 
} 

class Employee { 
    private int id; 
    private String name; 
    public Employee(int id, String name) { 
     this.id = id; 
     this.name = name; 
    } 
} 
+0

, пожалуйста, покажите, как он используется и как он реализован. – aalku

+0

См. Отредактированный код выше. –

+0

Я знаю, как работают varags, я просто думаю, что вы должны показать, что args - это массив, и я думаю, что вы все еще этого не делаете. +1 В любом случае. – aalku

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