Войти или зарегистрироваться

Туториал Учимся программировать на Java вместе.

  • Автор темы Автор темы Teozard
  • Дата начала Дата начала

Продолжать ли данную тему ?


  • Всего проголосовало
    280
Ребята, в задании после того как спросили как тебя зовут, надо написать и что бы с помощью System.out.printin вывело Hello + твое имя, я так понял надо ввести не само имя, а значение которое оно будет выдавать?
Допиши что в 7 ответе должно было получиться)

Ты вводишь с клавиатуры значение переменной типа string и выводишь System.out.println("Hello" + переменная);
 
Тео, это самая охрененный туториал по ЯП, который я видел. Большой респект тебе, чувак
Где смотреть таблицу/библиотеку стандартных java-классов?
Я имею ввиду к примеру
Код:
java.util.*
, и все функции, что в ней(библиотеке) находятся.
http://docs.oracle.com/javase/7/docs/api/
 
Обнову ждать можно?
 
Неделя вторая. Часть третья.
Параметры и возврат значений для методов.
  • Если какой-то из методов требует данные вне объекта, то эти данные передаются как параметр.
  • Если же метод используется для того, чтобы отдать данные для вызывавшего его класса, тогда происходит возврат значений.
  • Самое главное определить, что нам нужно от метода: возвращать значения или передавать его как параметр.
5ac571783f23d13ea1a9451fe6706399.png


50.25 тут является параметром метода пополнения счета, так что счет класса BankAccount в котором содержится объект mine может быть обновлен.

______________________________________
Вызов методов, что не передают и не возвращают данные
Синтаксис:
<object name>.<method name> ( );
Примеры:
m.printMessage( );
st1.outputStock( );
st1.inputStock ( );
______________________________________
Вызов методов, что передают только параметры
Синтаксис:
<object name>.method name> (parameter list);
Примеры:
m.setMessage("Hello")
st1.setQuantity(10);
st1.decrementQuantity(2);
______________________________________
Вызов методов, то передают и возвращают данные
Синтаксис:
<variable name> = <object name>.<method name> (parameter list);
Примеры:
double average = a1.calcAverage(5, 6);
//или же
System.out.println(a1.calcAverage(5, 6));
______________________________________
Класс и Объекты
В программе мы пишем описание класса, затем мы создаем объект этого класса, используя конструктор (объект должен быть создан вне класса). В тот момент когда мы создали объект, он может испольовать методы внутри класса.
Java:
//Описание класса
public class Message
{
  private String messageBody;  //Переменная
  public void setMessage(String newBody) //Метод
  {
    messageBody = newBody; //тело метода
  }
public String getMessage() // метод
{
    return messageBody;
  }
public void printMessage() // метод
  {
    System.out.println(messageBody);
  }
}
Java:
//создание объекта в классе тестере
public class MessageTester
{
public static void main (String[] args)
{
  Message mine = new Message();//Используем стандартный конструктор чтобы создать объект для сообщения названый mine
mine.setMessage("Hello World");//Используем метод, чтобы именить данные объекта
  } //Заметка: на выходе ничего нету, так как мы только изменили данные в объекте
}
Методы.
Основные свойства:
  • Имеют открытый (публичный) интерфейс
  • Имеют имя
  • Могут возвращать значения
  • Могут пройти как параметры
  • Могут использовать локальные переменные
  • Определяют что мы можем сделать с атрибутами объектов класса, например изменить их или получить к ним доступ.
Метод - очередность инструкций, которые имеют доступ к данным объекта (его атрибутам или переменным). Мы маниупулируем объектами через вызовы его методов. Именно класс определяет верные методы.
String greeting = "Hello";
greeting.println() // Error
greeting.length() // OK


Возврат значения - это результат того, что метод был испольвован для расчета той частью кода, который вызвал этот его.
String msg = myMsg.getMessage();

Параметры
  • Метод передает параметры в скобках
  • Параметры используются для того чтобы передать значения методу, из-за чего тот же самый метод может быть использован с другими значениями
  • Если же метод передает много параметров, то каждый из них должен быть разделен запятой
Java:
System.out.println("Hello world");
System.out.println("Hello " + name);
myMessage.setMessage("Good day");
av.calcAverage(3, 5);

Так же есть возможность использовать возвращеные значения одного метода, как параметры другого.
System.out.println(mine.getMessage());

Не все методы возвращают значения, например:
Как же тогда узнать какой метод возвращает значения или передает один или несколько параметров? Можно посмотреть в классе на его описание или же, если это часть уже существующей библиотеки, почитать в документации.

Что же такое описание метода. Заголовок метода обычно уже сразу определяет параметры и возврат значений, к примеру:
Java:
public String getMessage()
  // return type: String
  // no parameter
public void setMessage(String msg)
  // no return type
  // one String parameter
public void printMessage()
  // no return type
  // no parameter
Если же у метода нету никаких значений или параметров, то его значение высталяется как void.
Java:
public void printMessage() // in class Message
 
Первая неделя. Часть 3(упражнения). Упражнение 6.
Консоль выводит сообщение для команды "java Message": "Error: Main method not found in class Message, please define the main mathod as: public static void main(String[] args)";
Попытался код изменить, как в примере, но там компилятор стал ругаться. От отчаяния решил скопировать код из топика, но компилятор то же самое выдает.
Для команды "java MessageTester" консоль выдаёт пустую строку. Мне кажется, я что-то забыл установить. JDK и JRE стоят. :creeper:
За уроки спасибо. ;)
 
Первая неделя. Часть 3(упражнения). Упражнение 6.
Консоль выводит сообщение для команды "java Message": "Error: Main method not found in class Message, please define the main mathod as: public static void main(String[] args)";
Попытался код изменить, как в примере, но там компилятор стал ругаться. От отчаяния решил скопировать код из топика, но компилятор то же самое выдает.
Для команды "java MessageTester" консоль выдаёт пустую строку. Мне кажется, я что-то забыл установить. JDK и JRE стоят. :creeper:
За уроки спасибо. ;)

Ты не определил точку входа в программу - метод main
public static void main(String args[])
 
Первая неделя. Часть 3(упражнения). Упражнение 6.
Консоль выводит сообщение для команды "java Message": "Error: Main method not found in class Message, please define the main mathod as: public static void main(String[] args)";
Попытался код изменить, как в примере, но там компилятор стал ругаться. От отчаяния решил скопировать код из топика, но компилятор то же самое выдает.
Для команды "java MessageTester" консоль выдаёт пустую строку. Мне кажется, я что-то забыл установить. JDK и JRE стоят. :creeper:
За уроки спасибо. ;)

Покажите что у вас в коде, тогда разберемся :)
 
Одна беда. Я ничего не понимаю из вашего ответа, адресованного мне :(.

Видимо, Вы не знаете самих основ. Советую начать с чтения книги, которую порекомендовал уважаемый мною Googleman , я сам ее читаю. Там-то Вы и узнаете все, что хотите, а потом уже на Эккеля или Хорстмана переходите.
P.S. Вкраце - каждая программа на Java (кроме апплетов и приложений на Android) должна иметь точку входа, т.е. место (а в данном случае - метод), с чего должно начинаться выполнение программы, в Java нужен метод main(), но идет он с кучей модификаторов. Вы не изучали Паскаль? Там ведь тоже точка входа: begin:, а в Java (унаследованной у C++) метод main().
 
Видимо, Вы не знаете самих основ. Советую начать с чтения книги, которую порекомендовал уважаемый мною Googleman , я сам ее читаю. Там-то Вы и узнаете все, что хотите, а потом уже на Эккеля или Хорстмана переходите.
P.S. Вкраце - каждая программа на Java (кроме апплетов и приложений на Android) должна иметь точку входа, т.е. место (а в данном случае - метод), с чего должно начинаться выполнение программы, в Java нужен метод main(), но идет он с кучей модификаторов. Вы не изучали Паскаль? Там ведь тоже точка входа: begin:, а в Java (унаследованной у C++) метод main().

Что за бред, сударь?
Любая программа на Java имеет свою точку входа! В обычных приложениях это метод main, в апплетах отличный от main метод. В серплетах ещё один, а в Android приложениях там по сфицифике архитектуры разработки совсем другой алгоритм.
 
Что за бред, сударь?
Любая программа на Java имеет свою точку входа! В обычных приложениях это метод main, в апплетах отличный от main метод. В серплетах ещё один, а в Android приложениях там по сфицифике архитектуры разработки совсем другой алгоритм.
Простите, не так составил предложение, я имел ввиду, что точку входа main имеют не все приложения на Java.
 
Герберт Шилдт - Java. Полное руководство.

Почитал до 155 страницы. Получается, что если вписать в MessageTester после " mine.setMessage("Hello World");" строку " mine.printMessage();", то получим вывод на экран. Получается, что в первом коде описание методов, а во втором - их использование. :creeper:
 
Тео где и на каком факультете ты учишься???
 
Назад
Верх