2017-01-15 2 views
-1

У меня есть два вопроса:Как расширить класс от другого класса (Java)

1) Есть ли способ extend из class A из внешнего файла? как?

2) Я создаю один класс своих собственных методов (для использования во всем мире, во всех моих проектах). Вот phseudo-код:

package MyFunctions; 
import Twitter.profile; 

public class MyFuncs{ 
    public String externalProfile1() { return Twitter.profile.TwitterUrl(); } 
} 

Я хочу Есть ли способ, чтобы включить этот файл во всех моих проектах, и избежать ошибок IDE, так как я должен быть в состоянии использовать любого, когда один из вышеперечисленных функций в своих проектах ... Проблема в том, что классы Twitter.Profile не включены во все мои проекты, и всякий раз, когда это происходит, - см. Ошибку в IDE («не удается найти метод символа») ...

как решить проблему?

+1

Нет «команды расширения» для «вызова». Непонятно, что вы пытаетесь сделать, и наиболее вероятным ответом является то, что ваш метод 'twitterUrl()' принадлежит 'Twitter', и, возможно, вам нужно иметь« Collection »и вызвать' getExternalProfile() ' на каждом из них. Ваши «многие функции здесь» пахнут, будто вы переплескиваете несвязанный код в класс кухни. – chrylis

+0

Я понятия не имею, о чем вы спрашиваете себя, @chrylis работает лучше. Пожалуйста, обратите внимание на реальный код, а не на вид кода. –

+0

Хорошо, у меня есть упрощенный вопрос. Спасибо, в любом случае. –

ответ

1

Вопрос 2:

Просто убедитесь, что все ваши функции в вашей библиотеке написаны статически:

public class MyFuncs{ 

    public static String externalProfile1(String link)  { return TwittUrl() + "/profile"; } 
    public static String externalProfile2(String link)  { return YahooUrl() + "/profile"; } 
} 

А затем импортировать этот класс в файлах проекта, который вы будете использовать библиотеки. Тогда вы можете легко вызвать функции в своей библиотеке. Кроме того, вы можете избежать импорта библиотеки в любой другой файл и вместо того, чтобы вызывать функции в статическом виде:

MyFuncs.externalProfile1("link"); 

Что касается TwittUrl(), если он не требует, чтобы быть в отдельном классе, а затем рефакторинга, рефакторинга и поместите его в класс MyFuncs; в противном случае вы можете сделать методы TwittUrl() и YahooUrl() статичными в своем классе.

+0

спасибо Pahlavan! ... Как избежать ошибок, если класс 'Twitter' не используется в проекте? –

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