1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
1

Использование функции(метода) другого класса!

22.02.2017, 17:43. Показов 4490. Ответов 14
Метки нет (Все метки)

Всем доброго времени суток! Изучаю я Java по книжке (Сьерра К, Бейтс Б.) и вот на странице "67" я наткнулся на такой пример:
Javascript
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
class Movie { 
    String title; 
    String genre; 
    int rating;
    void playIt() { 
        System.out.println("Проигрывание фильма") ; 
    } 
} 
 
public class MovieTestDrive {
    public static void main (String [] args) { 
        Movie one = new Movie () ; 
        one.title = "Как Прогореть на Акциях"; 
        one.genre = "Трагедия"; 
        one.rating = -2; 
        Movie two = new Movie(); 
        two.title = "Потерянные в Офисе"; 
        two.genre = "Комедия"; 
        two.rating = 5; 
        two.playIt(); 
        Movie three = new Movie(); 
        three.title = "Байт-Клуб"; 
        three.genre = "Трагедия, но в целом веселая"; 
        three.rating = 127; 
    } 
}
И вот как можно использовать функцию(метод) void playIt() класса Movie ?
Ну в смысле чтоб можно было выводить на печать все значения каждого из 3-ёх объектов класса "Movie" через функцию(метод) "playIt()". А-то реализуется первоначальное значение "занесённое в 'метод' ("Проигрывание фильма") "
А так же создать объект класса MovieTestDrive который бы обращался с элементу класса "Movie" т.е. так-же программа НО
к примеру вместо
Javascript
1
2
3
4
5
6
7
8
9
10
11
        Movie one = new Movie () ; 
        one.title = "Как Прогореть на Акциях"; 
        one.genre = "Трагедия"; 
        one.rating = -2;
 
//Было бы
 
        MovieTestDrive one = new MovieTestDrive () ; 
        one.title = "Как Прогореть на Акциях"; 
        one.genre = "Трагедия"; 
        one.rating = -2;
Думал через виртуальную функцию но вроде бы в Java всё виртуальное так?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.02.2017, 17:43
Ответы с готовыми решениями:

Вызов метода из другого класса
Собственно не получается вызвать метод из класса math public class math { int...

Подключение метода из другого класса
Добрый день! Проблема в чем: В среде NetBeans есть форма с полем jTextPane1, есть класс Chek_void...

Вызов метода из другого класса
Здравствуйте, подскажите как можно создать два класса так, чтобы из второго вызывался метод первого?

Как вызвать из одного класса (для метода типа void) метод типа boolean другого класса?
ребят, только учусь и конечно, вопросов возникает много. ситуация вот в чем. есть массив. я должна...

14
Заблокирован
22.02.2017, 17:51 2
Цитата Сообщение от Maxim09 Посмотреть сообщение
MovieTestDrive one = new MovieTestDrive () ;
* * * * one.title = "Как Прогореть на Акциях";
* * * * one.genre = "Трагедия";
* * * * one.rating = -2;
Это, как бы, фиговенькая идея. Название-то у фильма, а не у класса testdrive.
Вот так сделай:
Java
1
2
3
void playIt() { 
        System.out.println("Проигрывание фильма ""+title+"", rating - "+rating) ; 
    }
0
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 17:58  [ТС] 3
А вот это куда надо?
Java
1
2
3
void playIt() { 
        System.out.println("Проигрывание фильма ""+title+"", rating - "+rating) ; 
    }
0
Заблокирован
22.02.2017, 18:03 4
Никуда. Этот тот же метод, что у тебя, чуть измененный, чтобы печатать, что он играет сейчас.
0
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:07  [ТС] 5
Этот код вроде-бы неправильный, т.е. синтаксическая ошибка какая-та (я пишу на NetBeans)
Java
1
2
3
void playIt() { 
        System.out.println("Проигрывание фильма ""+title+"", rating - "+rating) ; 
    }
0
Заблокирован
22.02.2017, 18:09 6
Лучший ответ Сообщение было отмечено Maxim09 как решение

Решение

Блин. На форуме убрались обратные слеши. Экранируй кавычки внутри.

Добавлено через 33 секунды
Код
void playIt() { 
        System.out.println("Проигрывание фильма \""+title+"\", rating - "+rating) ; 
    }
1
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:09  [ТС] 7
Так?
Java
1
System.out.println("Проигрывание фильма"  + title +  rating + "+rating") ;
0
Заблокирован
22.02.2017, 18:10 8
Нет, не так/
0
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:18  [ТС] 9
А что это за обратные слеши и что они делают?
0
Заблокирован
22.02.2017, 18:19 10
Экранируют кавычки.
0
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:23  [ТС] 11
А почему бы не написать вот так?
Java
1
System.out.println("Проигрывание фильма " + title + "rating -" + " " + rating) ;
0
Заблокирован
22.02.2017, 18:26 12
Потому что если у фильма название будет "не работает", то я увижу текст
Проигрывание фильма не работает rating - 0
Меня от этого коробит. Названия я всегда заключаю в кавычки, когда они входят в состав предложения. А какой код писать тебе - дело лично твое.
1
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:29  [ТС] 13
Понятно! И ещё вопрос а как сделать так чтобы выдавало результат не только по объекту 2 НО и по всем объектам по очереди?
0
Заблокирован
22.02.2017, 18:32 14
У каждого вызвать функцию проигрывания.
1
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
22.02.2017, 18:34  [ТС] 15
Спс!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.02.2017, 18:34

Вызов данных из метода другого класса
Добрый день! Подскажите пожалуйста, как решить поставленную самим собой задачу. Суть такова: есть...

Не изменятся переменная из метода другого класса help
Здравствуйте.Имеется проблема с переменными.Есть классы Brain и Home.В Brain имеются переменные...

Использование переменной из другого класса
Как при нажатии на кнопку использовать переменную из другого класса? Есть код проекта, схематично...

Использование класса из другого модуля
В общем проблема такая . Хочу конект сделать к БД . Создал для этого "логин модуль" в другом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.