Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
437 / 144 / 9
Регистрация: 12.01.2009
Сообщений: 678
Записей в блоге: 1

Как вызвать метод без объявления ссылочной целостности?

07.02.2013, 16:16. Показов 792. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Изучаю C# по книге "Изучаем C#" Э. Стиллмена и Дж. Грина.

Есть пример:
Кликните здесь для просмотра всего текста
C#
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Empty_Project
{
    class Boat {
        private int length;
        public void setLength(int len)
        {
            length = len;
        }
 
        public int getLength() {
            return (length);
        }
 
        public virtual string move() 
        {
            return " drift ";
        }
    }
 
    class Rowboat : Boat
    {
        public string rowTheBoat()
        {
            return "stroke natasha";
        }
    }
 
    class Sailboat : Boat
    {
        public override string move()
        {
            return " hoist sail";
            
        }
    }
 
    class TestBoats
    {
        public static void Main()
        {
            string xyz = "";
            Boat b1 = new Boat();
            Sailboat b2 = new Sailboat();
            Rowboat b3 = new Rowboat();
 
            b2.setLength(32);
            xyz = b1.move();
            xyz += b3.move();
            xyz += b2.move();
 
            System.Windows.Forms.MessageBox.Show(xyz);
                    
        }
    }
}


И поучительный диалог к нему:
В: Можно ли наследовать от класса, содержащего точку входа?

О: Да. Точка входа должна быть статическим методом, но этот метод может и не принадлежать к статическому классу. (Ключевое слово static означает невозможность создания экземпляров класса, но его методы доступны с момента запуска программы. В ребусе в бассейне (прим. analyst вышележащий код) метод TestBoats.Main() можно вызвать из любого другого метода без объявления ссылочной переменной или создания экземпляров при помощи оператора new.)

Можете подсказать как можно вызвать метод TestBoats.Main() из "любого другого метода"?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.02.2013, 16:16
Ответы с готовыми решениями:

ADOQuery - контроль ссылочной целостности
Добрый день! Возникла следующая проблема. Имеются две таблицы в MS Access 2007: 1) Клиенты - Код: целое число, ключевое поле,...

Как вызвать пост метод без перезагрузки страницы?
Короче такой трабл, есть MVC приложение. Как вызвать пост метод без перезагрузки страницы?

Как вызвать нестатический метод из нестатического класса без конструктора?
Доброго времени суток всем читающим! Вопрос касается библотеки Winium.Cruciatus, предназначенной для автоматизации UI десктопных...

9
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
07.02.2013, 17:30
лови. лишнее и ненужное удалил
C#
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Empty_Project
{
    class Boat
    {
        public void TEST_OVERFLOW()
        {
            Console.Write("повторный запуск метода Main: ");
            TestBoats.Main();
        }
    }
 
    public class TestBoats
    {
        public static void Main()
        {
            Console.WriteLine("Маин запущен");
            Boat b = new Boat();
            b.TEST_OVERFLOW();
        }
    }
}
1
 Аватар для buntar
543 / 544 / 181
Регистрация: 16.03.2012
Сообщений: 1,160
Записей в блоге: 2
07.02.2013, 17:47
Не зациклиться?
0
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
07.02.2013, 17:50
ну название вызываемого метода говорит само за себя)))
0
437 / 144 / 9
Регистрация: 12.01.2009
Сообщений: 678
Записей в блоге: 1
07.02.2013, 18:04  [ТС]
Спасибо, зациклилось. (Что-то не понял юмора), хотя получил то, что просил)
0
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
08.02.2013, 09:09
да тут всё просто: 1ым делом вызывается метод маин, а он, перед тем как завершится, должен выполнить метод тест-оверфлов. метод тест-оверфлов завершится после того, как выполнит ещё 1 метод маин. а метод маин в свою очередь...
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2013, 13:29
Spectral-Owl, проще сказать одно умное слово "рекурсия".
рекурсия == цикл, соответственно рекурсия без условия остановки это как цикл без условия остановки - вечный процесс. Отличие от цикла для компьютера только в том, что рекурсивный алгоритм как правило съедает ресурсов по чуть-чуть, а цикл сразу сожрал все что надо и больше не просит. Поэтому циклы реже стек вываливают.
1
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
08.02.2013, 14:37
Psilon, да я то знаю)
даже могу добавить от себя, что цикл не "сожрал всё что надо сразу". циклу необходимо ровно столько памяти, сколько занимает его текущая итерация. в то время как рекурсия вынуждена хранить результаты своей работы в стеке.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
08.02.2013, 14:40
Spectral-Owl, а я знаю, что вы знаете. А я не вам рассказываю
0
437 / 144 / 9
Регистрация: 12.01.2009
Сообщений: 678
Записей в блоге: 1
08.02.2013, 15:07  [ТС]
Цитата Сообщение от Psilon Посмотреть сообщение
Spectral-Owl, а я знаю, что вы знаете. А я не вам рассказываю
Я тоже знаю, но все равно спасибо)
Как всегда один вопрос с легкой руки отвечающего приводит к возникновению совсем не нужного обсуждения)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.02.2013, 15:07
Помогаю со студенческими работами здесь

Как вызвать метод info в метод Main и с какими параметрами?
я новичок в C#, так что не судите строго.. Я не думаю что это кому-то покажется сложным, но у меня вызывает дикий ступор(( using...

Как обойтись без объявления переменной
Добрый вечер. В методе generate требуется избавиться от переменной ref, добавив вместо этого в цикл for цикл while, который будет пробегать...

Как правильно описать метод объявления массива?
Я пишу так: public static int myArray(int arr) { } А мне ругается на myArray вот так: При чем, ругается...

Метод main и как им вызвать другой метод
Доброго всем времени суток. У меня возникла проблема. Вобщем дело такое. У меня есть тестовый класс Test, в котором существует 4 метода:...

Реально ли ВЧ вывести в ТОП без ссылочной массы?Если,да то в общих чертах расскажите?
Реально ли ВЧ вывести в ТОП без ссылочной массы?Если,да то в общих чертах расскажите?


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru