СОЗДАНИЕ КЛАССА В JAVA.

СТРУКТУРА КЛАССА.

Класс в java оформляется с помощью следующей конструкции:

public class Cat
{

}

Рассмотрим ее составляющие:

public – модификатор доступа к классу, в данном случае он нам говорит, что этот класс будет доступен не только данному классу, но и другим. В java существуют и другие  модификаторы, но об этого поговорим позднее.

class – ключевое слово, говорящее о том, что это класс.

Cat – имя класса. Имена классов принято писать с заглавной буквы.

{ } – фигурные скобки, между которыми разместится тело нашего класса.

Классы в java состоят из атрибутов и методов, присвоим некоторые и нашему коту.

АТРИБУТЫ КЛАССА CAT.

Атрибутами кота могут быть: имявесокраска. Атрибуты это переменные, которые объявляются следующим образом:

private int weight; // вес кота
private String name; // имя кота
private String color; //окрас кота

private  – здесь опять же указывает на права доступа. К переменной, в данном случае, можно обращаться только из ее класса, чтобы классы извне не могли ее изменить.

int, String – это типы данных. В данном случае вес будет задан при помощи целого числа – int, a имя и цвет при помощи символьной строки String.

После объявления каждого атрибута должна ставиться точка с запятой ; 

При помощи // в коде программы оформляются комментарии, которые являются правилом хорошего тона.

МЕТОДЫ КЛАССА CAT.

Пусть наш кот умеет естьспать и разговаривать. Опишем это поведение с помощью методов.

//кот ест
public void eat(){
	System.out.print("Eating...\n");
}

public void eat() – сигнатура метода, его определение. В данном случае она нам говорит о том, что:

  • метод eat() доступен для других классов  –  public;
  • метод  eat() не возвращает никаких данных  –  void.

eat – имя метода.  Имена методов, в отличие от имен  классов, принято писать с маленькой буквы. На конце каждого метода после имени всегда идут круглые скобки ( ), пустые или содержащие  параметры (об этом позднее).

После сигнатуры метода идут фигурные скобки { }. В них содержится тело метода. Тело нашего метода содержит просто вывод сообщения о том, что кот кушает — "Eating...\n". За вывод текстового сообщения отвечает метод  System.out.print("Eating...\n").

\n — символ перевода строки, чтобы при выводе наших сообщений все они не писались в одну строку.

 

Аналогично предыдущему методу опишем спящего кота:

//кот спит
public void sleep(){
 System.out.print("Sleeping zz-z-z-z...\n");
}

И немного иначе опишем метод – кот говорит:

//кот говорит
public String speak(String words){ 
  String phrase = words + "...mauu...\n";
  return phrase;
}

В отличие от предыдущих методов этот метод возвращает значение и имеет входные параметры.  Давайте подробнее рассмотрим сигнатуру метода public String speak(String words):

public —  метод speak() доступен для других классов;

String — тип значения, которое возвращает метод.  В предыдущих случаях ключевое слово void указывало на то, что метод ничего не возвращает. В данном случае  String  указывает на то, что метод возвращает значение типа строка.

Что же это значит? В процессе своей работы метод выполняет определенные действия над данными. Иногда необходимо, чтобы результат этих действий был передан для дальнейшей обработки другим классам, в этом случае метод передает (возвращает) этот результат. Эти возвращаемые данные относятся к какому-либо типу. В нашем примере это тип символьной строки, String.

Возвращающие методы должны содержать в своем теле ключевое слово returnкоторое указывает на то, что именно возвращает данный метод. В нашем случае это переменная phrase.

speak — имя метода.

(String words)  — входные параметры.  Входные параметры — это какие-либо данные, которые передаются из других классов и, которые  метод должен обработать. Наш метод получает в качестве входных данных строку в виде переменной words, к этой строке дописывает «...mauu...» и возвращает то, что получилось.

 

В итоге класс Cat выглядит следующим образом:

public class Cat {

  private int weight; // вес кота
  private String name; // имя кота
  private String color; //окрас кота

  //кот ест
  public void eat(){
    System.out.print("Eating...\n");
  }

  //кот спит
  public void sleep(){
    System.out.print("Sleeping zz-z-z-z...\n");
  }

  //кот говорит
  public String speak(String words){ 
    String phrase = words + "...mauu...\n";
    return phrase;
  }

}

ОБРАЩЕНИЕ К КЛАССУ.

Далее рассмотрим обращение к классу Cat.  И то, как его использовать в работе.

public class HelloWorld {

  /**
   * @param args
   */
  public static void main(String[] args) {

  }
}

public static void main(String[] args) – сигнатура метода main(). Программа состоит из нескольких классов, но только один из классов может содержать метод main(). Mетод main(), это так называемая точка входа в программу. Без этого метода мы не сможем стартовать программу. Теперь, вместо приветствия миру, этот метод будет содержать код для работы с классом Cat.

Пишем в тело метода main()  (между его фигурными скобками) следующие строки:

Cat ourcat = new Cat();
ourcat.eat();
ourcat.sleep();
String say = ourcat.speak("Play with me");
System.out.println(say);

Разберем подробнее, что это значит.

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

Cat ourcat = new Cat();

Данная строчка нам говорит о том, что в памяти создан экземпляр объекта Cat, а переменная ourcat типа Cat (такого же, как и наш объект) указывает на то место в памяти, где был этот объект создан.

Переменную ourcat теперь можно использовать для вызова методов класса Cat, например:

ourcat.eat();
 ourcat.sleep();

Если метод возвращает какое-либо значение, например, как наш метод speak() возвращает значение типа String, то его можно вызывать следующим образом:

  • объявить переменную такого же типа, что и возвращаемое значение (в нашем случае String)
  • присвоить ей вызванный метод, например:
String say = ourcat.speak("Play with me");

Вспомним, что при описании нашего метода он содержал параметры speak(String words). Теперь, при вызове в качестве параметра выступила фраза "Play with me", метод speak() ее обработал и вернул "Play with me...mauu...".  Именно это значение он присвоил переменной say.

Мы это можем проверить, выведя say на печать при помощи команды:

System.out.println(say);

Итак, наш класс HelloWorld теперь выглядит следующим образом:

public class HelloWorld {

  /**
   * @param args
   */
  public static void main(String[] args) {

    Cat ourcat= new Cat();
    ourcat.eat();
    ourcat.sleep();
    String say = ourcat.speak("Play with me");
    System.out.println(say);
  }

}

В качестве результата мы получаем следующие строки:

Eating...
Sleeping zz-z-z-z...
Play with me...mauu...

На этом закончим данный урок,  итак, в этом уроке мы:

  • Научились создавать класс в java.
  • Научились объявлять атрибуты и методы класса.
  • Узнали, что методы могут возвращать или не возвращать значения, иметь или не иметь входных параметров.
  • Узнали что такое метод main().
  • Научились создавать экземпляр класса и вызывать его методы, то есть работать с созданным объектом.

Взято отсюда.