Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ серия вопросов по java

Автор: compiler 3.06.2007 23:16

а вот новый вопрос
я хотел бы изменить возраст(поле) в классе, а не получается, что делать

Код
    ...
        public void setAge(int anAge) {
        age = anAge;
    }

        ...
        System.out.println("Age: " + myAdult.setAge(18));

заранее блгодарен
вся программа Прикрепленный файл  021.txt ( 773 байт ) Кол-во скачиваний: 548

Автор: hardcase 3.06.2007 23:25

setAge возвращает void
и должна использоваться как myAdult.setAge(18);

Автор: compiler 3.06.2007 23:29

это я уже устал smile.gif
спасибо...

Автор: compiler 4.06.2007 15:13

продолжаю серию своих вопросов... темы больше создавать не буду ибо не вижу смысла(если не прав надеюсь модеры разделят)
1) зачем оператор |, если есть ||... как я понял разница в том что в | вычесляются обе части, но ведь мы можем поместить это до условного оператора...

2)может ли клас обладать полем, но не обладать обьектом?

3)мне надо <<прочитать>> поле но как?
пишу так

Код
System.in.getClass(myAdult.lastname);
ошибка... так...
Код
System.in.getClass( toString(myAdult.lastname) );
, тоже ошибка... помогите пожалуйста...

Автор: compiler 4.06.2007 18:24

Помогите! и прочий флуд smile.gif

Автор: volvo 4.06.2007 18:41

Цитата
зачем оператор |, если есть ||
Затем, что первый - побитовый, а второй - логический... Чувствуешь разницу?

Автор: мисс_граффити 4.06.2007 19:13

Цитата
2)может ли клас обладать полем, но не обладать обьектом?

то есть?
объект - это экземпляр класса.
класс им не может обладать.

или ты про работу без создания объекта?
или вообще про интерфейсы? я не поняла sad.gif

Цитата
мне надо <<прочитать>> поле но как?

то есть ввести его значение с клавиатуры, что ли?
вот пример ввода целочисленной переменной:
        BufferedReader in  = new BufferedReader(new InputStreamReader(System.in));
System.out.println("value?");
int val = Integer.parseInt(in.readLine());


если напишешь точнее, что тебе надо, попробую сделать.

Добавлено через 3 мин.
а если тебе надо наоборот ВЫВЕСТИ значение поля, взятое в объекте, то так:
System.out.println(MyAdult.getAge())

если поля будут public, то в принципе к ним можно обращаться на прямую. но это как-то некультурно.

Автор: compiler 5.06.2007 18:43

Цитата(мисс_граффити @ 4.06.2007 15:13) *
то есть? объект - это экземпляр класса....я не поняла sad.gif
допустим я хочу подсчитать количество обьектов класса...
Цитата
если поля будут public, то в принципе к ним можно обращаться на прямую. но это как-то некультурно.
это ясно smile.gif

Автор: volvo 5.06.2007 18:58

Т.е., ты хочешь static-член класса?

Автор: compiler 5.06.2007 19:03

Цитата(volvo @ 5.06.2007 14:58) *
Т.е., ты хочешь static-член класса?
наверно smile.gif

Автор: volvo 5.06.2007 20:05

compiler, тогда читай про static здесь: http://ruseti.ru/Java/Glava2/Index14.htm smile.gif

Автор: compiler 5.06.2007 20:11

Цитата(volvo @ 5.06.2007 16:05) *
compiler, тогда читай про static здесь..
почитаю, спасибо...

оффтоп
а страничка была выбрана из-за присутствия(в заглавии) рекламы от дилера Вольво? lol.gif

Автор: Altair 6.06.2007 3:43

Цитата
Затем, что первый - побитовый, а второй - логический... Чувствуешь разницу?

Ик ... ик !
Вообще-то здесь вам не СИ....
оба логические.
Цитата
Существуют четыре логических оператора - &, &&, | и ||.

Если оба операнда имеют значение true, тогда операторы & и && возвращают true.

Если хотя бы один операнд имеет значение true, тогда операторы | и || возвращают true.

Операторы & и | всегда проверяют значение обоих операндов. && и || носят название операторов короткой схемы, так как если результат булевого выражения может быть определён из левого операнда, правый операнд не вычисляется.

Автор: volvo 6.06.2007 3:54

Цитата
оба логические

Документация на Java от Sun утверждает обратное:
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/operators.html

(см. Bitwise OR vs. Logical OR)

+
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/opsummary.html

Автор: Altair 6.06.2007 13:40

Она не утверждает обратное,
операторы | и & могут использовать как битовые но в случае, если результат операции - boolean то это логические операторы короткой схемы!!!
Поэтому, твой ответ на вопрос

Цитата
Цитата
зачем оператор |, если есть ||

Затем, что первый - побитовый, а второй - логический... Чувствуешь разницу?

неверен!

http://www.ibm.com/developerworks/ru/edu/j-scjp/section6.html#N10A4D

Автор: compiler 6.06.2007 18:26

спасибо за более подробные обьяснения, но зачем вообще битовые операции(кроме сдвигов ничего не понимаю...) поделитесь ссылочкой.

Автор: compiler 6.06.2007 19:55

+ volvo, у тебя нету оффлайн версии, а то я туда сейчас зайти не могу ("АККАУНТ ЗАБЛОКИРОВАН")

Автор: volvo 6.06.2007 20:00

А что, пользоваться Google-cache нельзя? smile.gif

Заходишь в Google, набираешь "java static site:ruseti.ru", и открываешь закешированную копию первой ссылки...

Автор: compiler 6.06.2007 20:06

Цитата(volvo @ 6.06.2007 16:00) *
А что, пользоваться Google-cache нельзя? smile.gif Заходишь в Google, набираешь "java static site:ruseti.ru", и открываешь закешированную копию первой ссылки...
а на другии странички... ссылки не работают...
я по этому руководству начал яву учить (нуждаюсь во многих статьях), а тут на тебе...

Автор: volvo 6.06.2007 20:21

Странно... У меня все ссылки открылись (правда без картинок)...

Ну, вот тебе то же самое руководство: http://www.realcoding.net/teach/java/index.html

Автор: compiler 6.06.2007 20:28

Цитата(volvo @ 6.06.2007 16:21) *
Ну, вот тебе то же самое руководство...
спасибо, єто работает

Автор: compiler 6.06.2007 21:31

а вот код оттуда нет

class PascalTriangle{
public static final int LINES = 10; // Так определяются констан
public static void main(String[] args) {
int[][] p, = new int [LINES] [];
p[0] = new int[1];
System, out. println (p [0] [0] = 1);
p[l] = new int[2];
p[l][0] = p[l][1] = 1;
System.out.println(p[1][0] + " " + p[l][l]);
for (int i = 2; i < LINES; i++){
p[i] = new int[i+l];
System.out.print((p[i][0] = 1) + " ");
for (int j = 1; j < i; j++)
System.out. print ( (p[i] [j] =p[i-l][j-l] -bp[i-l][j]) + " ");
System, out. println (p [ i] [i] = 1)
}
}
}

я не много подкорректировал , теперь компилируется, но результат другой...
class PascalTriangle{
public static final int LINES = 10; // Так определяются констан
public static void main(String[] args) {
int[][] p = new int [LINES] [];
p[0] = new int[1];
System.out.println (p [0] [0] = 1);
p[1] = new int[2];
p[1][0] = p[1][1] = 1;
System.out.println(p[1][0] + " " + p[1][1]);
for (int i = 2; i < LINES; i++){
p[i] = new int[i+1];
System.out.print((p[i][0] = 1) + " ");
for (int j = 1; j < i; j++)
System.out. print ( (p[i] [j] =p[i-1][j-1] -p[i-1][j]) + " ");
System. out. println (p [ i] [i] = 1);
}
}
}


помогите

Автор: volvo 6.06.2007 21:49

А при чем вот тут:

Цитата
System.out. print ( (p[i] [j] =p[i-1][j-1] -p[i-1][j]) + " "); 

минус?

Надо "плюс":
System.out. print ( (p[i] [j] =p[i-1][j-1] + p[i-1][j]) + " ");

Автор: мисс_граффити 6.06.2007 23:38

Могу выложить свои лекции по java, там даже есть работоспособные примеры. Единственная проблема - они в формате doc.

офф. Ненавижу джаву sad.gif(( Надеюсь, через пару дней это пройдет. А пока - сознанием понимаю, что у этого языка грандиозные возможности и т.д. и т.п., но смотреть на программки на ней уже не могу. Нельзя готовиться к экзаменам за один день...

Добавлено через 2 мин.
В смысле, свои конспекты. Нечетко выразилась.

Автор: compiler 6.06.2007 23:52

Цитата
Могу выложить свои лекции по java
буду рад их видить
Цитата
Единственная проблема - они в формате doc.
єто разве проблемма smile.gif
Цитата
офф. Ненавижу джаву sad.gif(( Надеюсь, через пару дней это пройдет. А пока - сознанием понимаю, что у этого языка грандиозные возможности и т.д. и т.п., но смотреть на программки на ней уже не могу. Нельзя готовиться к экзаменам за один день...
да, паскаль както ближе yes2.gif

Автор: мисс_граффити 7.06.2007 0:20

Цитата
єто разве проблемма

угу. читаем правила...

Автор: compiler 7.06.2007 0:35

Цитата(мисс_граффити @ 6.06.2007 20:20) *
угу. читаем правила...
1)можна импортировать в другой формат smile.gif //например в html
2)можна залить не на форум, а в другое место и оставить ссылку smile.gif
3) а потом это прямо не нарушает текущии правила yes2.gif
Цитата
11. выкладывать задачи в формате DOC...

Автор: compiler 7.06.2007 15:46

новая программка -- новая ошибка smile.gif
...
проблема решена...