Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Можно ли сделать как в с++? / 14 сообщений из 14, страница 1 из 1
30.08.2004, 04:12
    #32670379
biomen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Вот так:
class X
{
int func();
}

int X::func()
{
return 10;
}

собственно, как сделать внешнее определение функции?
...
Рейтинг: 0 / 0
30.08.2004, 07:12
    #32670397
sanek842
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
в java нет функций, там это называется методы класса, кот-ые есс-но описываются всегда внутри, а не из вне
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
public class X 
{
  int func()
  {
    return  10 ;
  }
}


ну если очень хочется, можно все объявления методов запихнуть в интерфейс

Код: plaintext
1.
2.
3.
4.
public interface Xf
{
  public int func();
}

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
public class X implements Xf
{
   public int func()
   {  
      return  10 ;
    }
}

только зачем? интерфейсы для другого

вроде так
...
Рейтинг: 0 / 0
30.08.2004, 08:57
    #32670463
biomen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Хочется , убрать определение функций-членов класса из обьявления класса, что-бы глянул на класс и увидел примерно такую вещь:
class Z
{
private int x;
private int y;

public int X();
public int Y();
};

где-то в другом месте:
int Z::X(){ return x;}
int Z::Y(){ return x;}

По-моему красиво и удобно.
...
Рейтинг: 0 / 0
30.08.2004, 09:00
    #32670466
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Вам надо переходить на Pascal
...
Рейтинг: 0 / 0
30.08.2004, 10:33
    #32670624
stdio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
biomenХочется , убрать определение функций-членов класса из обьявления класса, что-бы глянул на класс и увидел примерно такую вещь:
class Z
{
private int x;
private int y;

public int X();
public int Y();
};

где-то в другом месте:
int Z::X(){ return x;}
int Z::Y(){ return x;}

По-моему красиво и удобно.Интерфейс тебе нужен? Зачем в декларировании тебе приватные переменные показывать? Это кому-то поможет?
...
Рейтинг: 0 / 0
30.08.2004, 11:10
    #32670711
biomen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Alexander A. SakВам надо переходить на Pascal

Причем здесь Паскаль?


stdioИнтерфейс тебе нужен? Зачем в декларировании тебе приватные переменные показывать? Это кому-то поможет?

Поможет мне при разработке этого класса. ИМХО - гораздо удобнее определения и декларирование не смешивать.
...
Рейтинг: 0 / 0
30.08.2004, 11:24
    #32670763
А.Гpacoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
biomenХочется , убрать определение функций-членов класса из обьявления класса, что-бы глянул на класс и увидел примерно такую вещь:
class Z
{
private int x;
private int y;

public int X();
public int Y();
};

где-то в другом месте:
int Z::X(){ return x;}
int Z::Y(){ return x;}

По-моему красиво и удобно.

мне, например, удобно и красиво кушать пельмени, сидя на полу.
тебе как?
...
Рейтинг: 0 / 0
30.08.2004, 11:29
    #32670779
avlih
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
biomen Alexander A. SakВам надо переходить на Pascal

Причем здесь Паскаль?

Потому что в Паскале в одном модуле интерфейс отделен от реализации. В С++ интерфейс и реализация в разных файлах. В Java/C# класс в одном файле.

Поможет мне при разработке этого класса. ИМХО - гораздо удобнее определения и декларирование не смешивать.
С практической точки зрения мало чем поможет. Вопрос привычки.
...
Рейтинг: 0 / 0
30.08.2004, 18:10
    #32672040
NotGonnaGetUs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
biomenХочется , убрать определение функций-членов класса из обьявления класса, что-бы глянул на класс и увидел примерно такую вещь:
...
где-то в другом месте:
...
По-моему красиво и удобно.

Что удобного в написании методов в другом месте не понятно :) Только время тратить на поиск этих самых мест.
В конце концов, любая нормальная IDE (т.е. IDEA) умеет сворачивать тела методов, что бы глаза не мозолили.


Поможет мне при разработке этого класса. ИМХО - гораздо удобнее определения и декларирование не смешивать.


Какой смысл декларировать внутреннюю структуру класса (private field/methods)? Как тогда быть с сокрытием реализации объекта?

Если класс действительно того стоит :), то сделай интерфейс к нему (декларация) и реализуй его (определение(?)). Ну или абстрактный класс вместо интерфейса, что хуже... Эффект будет одинаковый.
Можно будет менять реализацию объекта, не трогая код использующий этот объект (через интерфейс). Всё красиво и приятно.
...
Рейтинг: 0 / 0
31.08.2004, 03:22
    #32672364
biomen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Спасибо всем. Выяснил, то что мне надо.

А.Гpacoffмне, например, удобно и красиво кушать пельмени, сидя на полу.тебе как?

А вы японец что-ли?:)
...
Рейтинг: 0 / 0
31.08.2004, 11:17
    #32672779
А.Гpacoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
biomenСпасибо всем. Выяснил, то что мне надо.

А.Гpacoffмне, например, удобно и красиво кушать пельмени, сидя на полу.тебе как?

А вы японец что-ли?:)

немножко
...
Рейтинг: 0 / 0
18.09.2004, 18:00
    #32700958
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Лет 20 назад когда компилляторы были слабые и не могли загрузить
в память все библиотеки кода, были придуманы файлы деклараций.
(заголовочные, хедеры). Это и сейчас можно видеть в C++.
Лично я не вижу смысла сейчас использовать такой странный способ
описания приложений. Кроме того программист ленив по определению
и не желает писать ни строчки лишнего кода.
Современные языки и парадигмы предлагают вовсе отказатся от этого
способа. Java и С# предлагают взамен специальные комментарии
которые позволят тебе в дальнейшем сгенерировать красивые описания
классов и интерфейсов. Если ты озабочен красотой документации по
библиотекам - то возьми это на вооружение.
...
Рейтинг: 0 / 0
20.09.2004, 02:05
    #32701433
biomen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Спасибо и здесь:)
...
Рейтинг: 0 / 0
21.09.2004, 00:43
    #32703313
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать как в с++?
Пожалуйста!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Можно ли сделать как в с++? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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