Написать Java-класс с помощью FileWriter и создать экземпляр сгенерированного класса - PullRequest
0 голосов
/ 22 мая 2018

Я использовал средство записи файлов для создания xyz.java файла.Я создал внутри нее одну карту и постоянно обновляю только эту карту новыми значениями с помощью средства записи файлов.

xyz.java

Class xyz{
   private HashMap tempMap= new HashMap();

   public HashMap getTypeMap(){
      tempMap.put("Pqr","stu");
   }
 } 

Недавно обновлено xyz.javaобновит только метод getTypeMap (), а остальные части класса останутся без изменений.

 public HashMap getTypeMap(){
      tempMap.put("Pqr","stu");
      tempMap.put("utr","zyr");

   }

У меня есть один вспомогательный класс, через который я обновляю файл xyz.java, и внутри этого класса я создаюэкземпляр класса xyz и доступ к карте, но получение значения карты равно нулю.

 class helper{

          1.// code to update xyz.java file.
          2.// code to create instacne
           xyz obj = new xyz();
           obj.getTypeMap();

        }

Но если мы отладили приведенный выше код и попытались получить карту, это дает правильную заполненную карту.Но если мы напрямую запустим код выше, это даст карту как ноль.В чем может быть причина?

Пожалуйста, предположите, что выше псевдокод.Не рассматривайте проблемы компиляции.

1 Ответ

0 голосов
/ 22 мая 2018

getTypeMap () должен возвращать что-то вроде public HashMap getTypeMap(){return...}.в настоящее время это тип void.Я заметил, что у вас нет метода getMap () в вашем xyz.java.Это опечатка?Должно ли это быть obj.getTypeMap()

 class helper{

   1.// code to update xyz.java file.
   2.// code to create instacne
    xyz obj = new xyz();
    HashMap result = obj.getTypeMap();//

 }
Class xyz{
   private HashMap tempMap= new HashMap();

   public HashMap getTypeMap(){
      tempMap.put("Pqr","stu");
      return this. tempMap;
   }
 } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...