Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / какие ошибки допущены? / 20 сообщений из 20, страница 1 из 1
16.08.2012, 09:36:54
    #37918755
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
всем привет
гляньте на код = может он слишком избыточен, есть ошибки кодинга или оформления кода?
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
package myform;

import java.awt.*;
import library.pvclass;

public class form extends javax.swing.JFrame {
  
  public int[] arr_scr;
  public int wScreen,hScreen,wForm,hForm,leftForm,topForm;
  public javax.swing.JFrame frm;
  public pvclass pvc;
  
  form()
  {
    this.frm = new javax.swing.JFrame();
    this.pvc = new pvclass();  
    this.arr_scr = pvc.screenSize();
    this.wScreen = arr_scr[0];
    this.hScreen = arr_scr[1];
    this.wForm = wScreen - 100;
    this.hForm = hScreen - 100;
    this.leftForm = (wScreen - wForm)/2;
    this.topForm = (hScreen - hForm)/2 - 20;
      frm.setTitle("New Form");
      frm.setSize(wForm, hForm);
      frm.setLocation(leftForm, topForm);
  }
  
  public static void main ( String args[] )
  {
    form obj = new form();
    obj.frm.setVisible(true);
  }
  
}


заранее благодарен
...
Рейтинг: 0 / 0
16.08.2012, 10:17:15
    #37918839
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
На счет оформления кода: откройте Netbeans или другую IDE и, щелкнув правой кнопкой по коду, выберите Format.
или вы в блокноте все пишите?
...
Рейтинг: 0 / 0
16.08.2012, 10:21:03
    #37918845
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
почему метод form() у вас ничего не возвращает? и нет его характеристики относительно доступности для других классов.

должно быть примерно так:

Код: java
1.
2.
3.
4.
private void form()
{
// foo
}
...
Рейтинг: 0 / 0
16.08.2012, 10:28:14
    #37918857
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
Nixicпочему метод form() у вас ничего не возвращает? и нет его характеристики относительно доступности для других классов потому что это конструктор в котором инициализируется что-то
...
Рейтинг: 0 / 0
16.08.2012, 10:28:29
    #37918859
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
переменные можно, конечно, и так объявить как у вас
Код: java
1.
public int wScreen,hScreen,wForm,hForm,leftForm,topForm;


но лучше каждую отдельно и если вам не надо их использовать в других классах, сделать из private.
Код: java
1.
2.
3.
4.
5.
6.
public int wScreen,
private int hScreen;
private int wForm;
private int hForm;
private int leftForm;
private int topForm;



Можно вообще модификатор доступа не указывать, тогда переменные становятся package-private, как я понял, доступны в рамках пакета, где класс лежит.. Но никогда такое не использовал. Подробнее здесь .
...
Рейтинг: 0 / 0
16.08.2012, 10:30:36
    #37918866
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
buyboyNixicпочему метод form() у вас ничего не возвращает? и нет его характеристики относительно доступности для других классов потому что это конструктор в котором инициализируется что-то
Тогда имя класса (даже не тогда, а всегда) должно быть с большой буквы. И конструктора - соответственно тоже. Методы называют с маленькой буквы, я поэтому и подумал что это метод, не смотря на имя класса.
...
Рейтинг: 0 / 0
16.08.2012, 10:33:18
    #37918871
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
у конструктора, кстати, тоже должен быть модификатор доступа
...
Рейтинг: 0 / 0
16.08.2012, 10:36:06
    #37918878
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
После extends я бы написал сразу JFrame, т.е. без пути. "javax.swing."
и вынес бы в импорт

import javax.swing.JFrame;
...
Рейтинг: 0 / 0
16.08.2012, 10:40:19
    #37918883
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
buyboy, жесть
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
package myform;

import java.awt.*;
import library.pvclass;

public class form extends javax.swing.JFrame {
  
//уберите все паблики  
public int[] arr_scr;
  public int wScreen,hScreen,wForm,hForm,leftForm,topForm;
  public javax.swing.JFrame frm;//зачем тогда form расширяет JFrame если тут у вас еще один JFrame, убирайте extends
  public pvclass pvc;//это что?
  
  form()//а вот тут поставьте паблик, иначе из другого пакета не создадите экземпляр класса
  {
    this.frm = new javax.swing.JFrame();
    this.pvc = new pvclass();  
    this.arr_scr = pvc.screenSize();
    this.wScreen = arr_scr[0];
    this.hScreen = arr_scr[1];
    this.wForm = wScreen - 100;
    this.hForm = hScreen - 100;
    this.leftForm = (wScreen - wForm)/2;
    this.topForm = (hScreen - hForm)/2 - 20;
      frm.setTitle("New Form");
      frm.setSize(wForm, hForm);
      frm.setLocation(leftForm, topForm);
  }
  
  public static void main ( String args[] )
  {
    form obj = new form();
    obj.frm.setVisible(true);
  }
  
}
...
Рейтинг: 0 / 0
16.08.2012, 10:46:10
    #37918893
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
Nixicно лучше каждую отдельно
так нагляднее - согласен, но захотелось сократить количество строк
...
Рейтинг: 0 / 0
16.08.2012, 10:46:59
    #37918894
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
NixicПосле extends я бы написал сразу JFrame, т.е. без пути. "javax.swing." и вынес бы в импорт
ценно! спасибо!
...
Рейтинг: 0 / 0
16.08.2012, 10:48:46
    #37918899
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
Не все так страшно )))
1. Имена классов называют с большой буквы.
2. Методы класса называют с маленькой буквы.
так принято.
3. Поля классов делают private, а обращаются к ним из других классов через геттеры и сеттеры.
4. У конструктора должен стоять модификатор public, а имя точно такое же как у класса.
5. Переменные объявляйте каждую отдельно, так нагляднее и проще удалить (всю строку) в случае ненадобности.
В принципе это я итоги подвел ))
...
Рейтинг: 0 / 0
16.08.2012, 10:51:52
    #37918902
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
NixicНе все так страшно )))
мне побыть ламером не хочется - но придется
...
Рейтинг: 0 / 0
16.08.2012, 10:53:31
    #37918907
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
Nixic,
Nixic4. У конструктора должен стоять модификатор public,
Не должен, а может.
...
Рейтинг: 0 / 0
16.08.2012, 12:03:44
    #37919075
buyboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
а что касается взаиморасположения блоков объявления полей, конструктора и главного метода?
если объявдяется много переменных и/или конструктор получается громоздким - может все это можно располагать в нижней части класса?
ну чтобы не скролить каждый раз до рабочего метода если строк кода слишком много?
...
Рейтинг: 0 / 0
16.08.2012, 12:07:09
    #37919081
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
buyboy,
а смысл? любая IDE имеет тот или иной навигатор по методам, скроллить никуда не надо, и main такой же метод как все остальные. Не загоняйтесь по форме пока, загоняйтесь по содержанию.
...
Рейтинг: 0 / 0
16.08.2012, 12:09:58
    #37919090
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
buyboy,
Вам очень не хватает вот этого
http://www.oracle.com/technetwork/java/codeconv-138413.html
Так же очень рекомендую вот этот сайт
http://www.javapractices.com/home/HomeAction.do
И вот эту книгу
http://www.ozon.ru/context/detail/id/1425895/

Для быстрого старта самое то.
...
Рейтинг: 0 / 0
16.08.2012, 12:11:12
    #37919093
javapecker
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
Blazkowicz,
что-то вы сегодня всем это советуете. Супчик дня?))
...
Рейтинг: 0 / 0
16.08.2012, 12:12:43
    #37919098
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
buyboyа что касается взаиморасположения блоков объявления полей, конструктора и главного метода?
если объявдяется много переменных и/или конструктор получается громоздким - может все это можно располагать в нижней части класса?
ну чтобы не скролить каждый раз до рабочего метода если строк кода слишком много?

пофиг-веники, могу ошибаться, но я всегда делаю так:

класс
{
переменные.
конструктор.
методы.
}

Можно все в конструктор пихать, а можно в отдельный метод, но после объявления его исполнять (мне так больше нравится). Так что расположение не особо важно.
Кроме того, есть у меня классы почти по 3 тыс строк (интерфейс там нагроможденный сильно), так что там без разницы, так и так приходится скролить, а иногда даже пейдждаунить, а иногда даже использовать Navigator по классу! )))
...
Рейтинг: 0 / 0
16.08.2012, 12:17:33
    #37919114
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
какие ошибки допущены?
javapeckerBlazkowicz,
что-то вы сегодня всем это советуете. Супчик дня?))
13019516
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / какие ошибки допущены? / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]