Я все еще новичок в Java, и есть некоторые концепции, которые меня все еще путают. Я бы хотел запустить вибрацию в классе stummer из моего основного класса. Вибрационный метод не может существовать в моем основном классе, поскольку он является абстрактным методом (я предполагаю). Я хочу вызвать этот метод из моего основного класса, но я не уверен, как с момента получения «статической ссылки на нестатический метод». У меня есть очень общее представление о том, почему это не работает, но мне нужно знать, как вы бы назвали этот метод, полагая, что он не будет работать в методе playTheSound.Как вызвать функцию в абстрактном классе?
Heres код
public void playTheSound() {
// set up MediaPlayer
MediaPlayer mp = new MediaPlayer();
switch (i) {
case 1:
mp = MediaPlayer.create(this, R.raw.cmaj);
mp.start();
strummer.vibrate(pattern, repeat);
break;
}
}
}
abstract class strummer {
public abstract void vibrate (long[] pattern, int repeat);
}
Является ли ваш класс методом '' 'playTheSound()' '' наследуемым от класса strummer? –
У меня это работает, я не уверен, что этот метод был тем, что я хотел сделать. Я просто хотел получить доступ к шаблону и повторить метод, но, оказывается, вы можете сделать это с вибрацией, когда вы импортируете вибратор. Я думаю, что API-интерфейс разработчика меня смутил. Удалите вопрос. – lorless
Прежде всего, вам нужно понять концепции абстрактного класса и методов: http://en.wikipedia.org/wiki/Abstract_class В принципе, абстрактный класс является классом, который должен быть расширен другим классом, который затем обеспечит конкретную реализацию абстрактных методов. Ваш код может ссылаться на абстрактный класс, но ему нужно получить ссылку для конкретного класса, который ее расширяет. –