Я уже достаточно долго программирую на Python, теперь учу C++. И у меня, как у довольно опытного программиста уже есть к вашему вопросу пара своих. Во-первых, вы говорите о вызове методов определенного класса (судя по вашему описанию не объекта, а именно класса) через методы других классов - вы же просто должны прописать вызов метода нужно вам класса в другом методе.
Во-вторых вы говорите об интерфейсе, но как бы зачем создавать мать её 4 класса и (ухх как у меня бомбит) делать несколько классов для смены одной и той же картинки, если можно организовать это вообще по другому!
В-третьих, для того, чтобы написать такую программу, как вашем примере необходимо:
1) Создать класс с окном вашего приложения
2) Сделать метод для добавления в окно новой кнопки с текстом и позицией (при необходимости) передаваемыми как аргумент этому методу. Также этот метод должен менять картинку (да-да, картинка - это атрибут того класса из пункта 1).
3) Прописать вызов функции в конструкторе класса.
Чувак, то что ты предлагаешь - говнокод учись применять ООП по его назначению, а не штамповать классы непонятно для чего.
Написано на JS, но можно на любом другом языке (просто в ответе не было указано какой нужен)
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1) + min);
}
function generateNumbers(howMany, maxNumber) {
const result = [];
for (let i = 0; i < howMany; i++) {
result.push(getRandomInt(1, maxNumber));
}
return result;
}
const numbers = generateNumbers(1000, 1000);
// нечетные числа
const oddNumbers = numbers.filter(number => number % 2 !== 0);
const oddNumbersAtAll = oddNumbers.length;
console.log('1. количество нечетных чисел ', oddNumbersAtAll);
const sumOfOddNumbers = oddNumbers.reduce((acc, current) => {
return acc + current;
}, 0);
console.log('\t сумма нечётных чисел ', sumOfOddNumbers);
const averageOfOdd = sumOfOddNumbers / oddNumbersAtAll;
console.log('2. среднее арифметическое нечетных чисел ', averageOfOdd);
const numbersEndsWithFive = numbers.filter(number => String(number)[String(number).length - 1] == 5);
console.log('3. количество чисел, оканчивающихся цифрой 5. ', numbersEndsWithFive.length);
console.log('4. корень из среднего арифметического нечетных чисел ', Math.sqrt(averageOfOdd));
P.S.
Не забывайте нажать " ", поставить оценку, и если ответ удовлетворил, то выберите его как "Лучший" :) В конечном счёте это правило хорошего тона благодарить людей которые тратят время на