28.08.2014 / 13:42 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| RblSb, вызываю метод наследуемого от него класса это как? Откуда суперкласс знает о методах наследника? Можно только наоборот
|
28.08.2014 / 16:16 | |
Kalter Пользователь Сейчас: Offline
Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
| Выложи полные исходники, будет понятнее... Иначе остаётся только гадать.
Неплохой материал по Canvas && GameCanvas: www.mobilab.ru/articles/33/&hl=ru&gl=ru&strip=1
__________________
Homo homini penis est. |
28.08.2014 / 16:22 | |
RblSb Пользователь Сейчас: Offline
Регистрация: 25.07.2011
| основной класс, который вызывается из Main Открыть спойлер Закрыть спойлер import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
public class Game extends GameCanvas implements Runnable{
public Graphics g = getGraphics();
public Game()
{
super(true);
}
public void init() //из класса Main вызывается этот метод
{
setFullScreenMode(true);
Thread t = new Thread(this);
t.start();
}
public void run()
{
Effects effects = new Effects();
while(true){
effects.bits();
flushGraphics();
try { Thread.sleep(30); }
catch (Exception ex) {}
}
}
}
класс Effects Открыть спойлер Закрыть спойлер public class Effects extends Game{
public Effects() {}
public void bits()
{
g.setColor(2,255,2);
g.fillRect(0,0,40,40);
}
}
|
28.08.2014 / 16:32 | |
RooMeN Пользователь Сейчас: Offline
Откуда: Нижний Новгород Регистрация: 18.01.2010
| RblSb, Попробуй не наследовать Effects
|
28.08.2014 / 16:38 | |
RblSb Пользователь Сейчас: Offline
Регистрация: 25.07.2011
| RooMeN, хороший способ разобраться в наследовании я переменную Graphics g статической не могу сделать |
28.08.2014 / 16:41 | |
RooMeN Пользователь Сейчас: Offline
Откуда: Нижний Новгород Регистрация: 18.01.2010
| RblSb, в цикле effects.bits(g);
в классе эффекта public void bits(Graphics g) {}
|
28.08.2014 / 17:03 | |
RblSb Пользователь Сейчас: Offline
Регистрация: 25.07.2011
| RooMeN, спасибо, заработало. так типа можно любую переменную передавать через метод? а под наследование кто-нить сможет переписать, ну или какие-нить простые примеры по работе с переменными/отрисовке графики с наследованием? или оно кривое и неудобное? из пдф горнакова примеры не копируются. |
28.08.2014 / 17:41 | |
Kalter Пользователь Сейчас: Offline
Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
| Это очень странный пример... Наверное ты не понял что такое наследование. Дело в том, что ты создаёшь класс "похожий" на класс Game. То есть класс Effect отличается от класса Game одним методом. Вот, хороший материал по наследованию: Интересная статьяСтатья на ВикиГлава из книги "Философия Java" __________________
Homo homini penis est. Изменено Kalter (28.08 / 17:42) (всего 1 раз) |
28.08.2014 / 17:49 | |
Kalter Пользователь Сейчас: Offline
Имя: Гриб Откуда: Оренбург - Нежинка Регистрация: 16.10.2013
| Что касается твоего примера: Ты в классе Effects используешь поле Effects.g, а не Game.g. То есть в классе Game ты создал поле g для рисования на холсте Game, а в классе Effects поле g для рисования на холсте Effects.
__________________
Homo homini penis est. |
28.08.2014 / 18:33 | |
RblSb Пользователь Сейчас: Offline
Регистрация: 25.07.2011
| Kalter, я читал, что подкласс расширяет главный класс. Как мне в методе bits изменить значения переменных класса Game? Поле это разве не переменная метода, а не всего класса?
|