Так что я думаю, что у меня есть довольно простой вопрос.Скажем, есть Java-программа с открытым исходным кодом com.cow.moo, которую вы включаете в свой проект com.bee.buzz.
У moo есть классные классы, большинство из которых вы не хотите трогать,но есть пара, которую вы делаете.Теперь, на данный момент, лучше всего расширить классы, которые вы хотите изменить, верно?(Я знаю, что было много сказано о расширениях и реализациях, но ни один из этих классов не является интерфейсом, так что об этом не может быть и речи.)
Мой вопрос, скажем, что это класс в moo:
package com.cow.moo;
public class Milk {
private float currentMilk;
public int getMilk() { /* Stuff */ }
public float convertToGallons (float liquid) { /* More Stuff */ }
}
Теперь, скажем, я хочу просто использовать getMilk в моем новом классе, расширяющем Milk.Тем не менее, getMilk в Milk использует приватные переменные (например, currentMilk) и другие функции, которые я не буду включать (например, convertToGallons.) Нужно ли будет включать эти другие переменные и функции, если я хочу, чтобы моя новая функция работала правильно?Я не хочу сильно изменять функцию, просто добавлю немного к ней.Каков наилучший способ сделать это?
Полезны также советы по построению более крупного проекта.Я полагаю, что некоторым экспертам по Java здесь не понадобится пяти секунд, чтобы найти ответ.Спасибо за ваше время.