Как статический класс может произойти из объекта?

Если вы хотите менее утомительно тестировать обновления из Play Store, Play Play предлагает Внутреннюю тестовую дорожку , где обновления доступны почти сразу (, вот шаги по настройке ]). Чтобы настроить его на телефоне в первый раз, вам нужно настроить трек с консоли выпуска Play Store, создать тестовое электронное письмо и нажать на ссылку для подтверждения на телефоне. Этот начальный процесс может занять некоторое время, но последующие обновления приложения на внутренней дорожке в PlayStore доступны на телефоне почти сразу (минута или две).

Если вы просто хотите проверить, как ваше приложение обновляется по причинам обратной совместимости, вам следует загрузить APK с помощью ADB с помощью adb install old-version.apk, а затем смоделировать обновление из PlayStore с помощью adb install -r new-version.apk, который заменяет существующий APK без очистки каких-либо данных приложения, подобно обновлению в Play Store

41
задан tereško 12 July 2014 в 07:51
поделиться

11 ответов

Нет никакого значения в получении статических классов. Причины использовать наследование:

  • Полиморфизм
  • Повторное использование кода

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

Повторное использование кода легко решено с помощью состава: приведите Панели статический пример Foo.

52
ответ дан munificent 27 November 2019 в 00:21
поделиться

От спецификации C# 3.0 разделите 10.1.1.3:

А статический класс не может включать основа класса спецификация (В§10.1.4) и не может явно указать базовый класс или список реализованных интерфейсов. Статический класс неявно наследовался типу object.

, Другими словами, Вы не можете сделать этого.

23
ответ дан Jon Skeet 27 November 2019 в 00:21
поделиться

Сообщение об ошибке является поддельным. Это не говорит объект. Это говорит о встроенном типе, названном "объектом", который является основой всего в.NET.

Это должно сказать, что "статические классы не могут указать базовый тип".

13
ответ дан GeekyMonkey 27 November 2019 в 00:21
поделиться

Взятый от http://msdn.microsoft.com/en-us/library/79b3xss3 (По сравнению с 80) .aspx

основные функции статического класса:

Они только содержат статических участников.

Они нельзя инстанцировать.

Они изолируются.

Они не могут содержать Конструкторы экземпляра (Руководство по программированию C#).

Так, наследовавшись нестатическому классу нарушает первую функцию статических классов в этом списке путем представления нестатических участников статическому классу.

8
ответ дан Christopher McAtackney 27 November 2019 в 00:21
поделиться

Я не думаю, что C# поддерживает наследование для статических классов.

Одна опция состояла бы в том, чтобы использовать шаблон "одиночка" вместо этого

public class foo
{ }

public class bar : foo
{
    private bar instance;
    public bar GetInstance()
    {
        if(instance == null) instance = new bar();
        return instance;
    }

    private bar(){} //make default constructor private to prevent instantiation 
}
2
ответ дан RSlaughter 27 November 2019 в 00:21
поделиться

Как установленный ранее спецификация C# говорит, что это не может быть сделано. Вы не можете реализовать интерфейс со статическими классами также. Ваш лучший выбор состоит в том, чтобы измениться от использования статического класса к использованию класса, который использует шаблон "одиночка". У Вас будет только один экземпляр (подобный тому, как статический класс работает), и Вы сможете наследовать интерфейсы реализации или поведение.

Вы читаете на Одиночных элементах здесь , здесь , и здесь .

1
ответ дан RS Conley 27 November 2019 в 00:21
поделиться

Не все классы (статичный включенный) уже происходят из объекта? Как в, по умолчанию?

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

0
ответ дан Svish 27 November 2019 в 00:21
поделиться

Это не может. Необходимо создать нормальный класс для получения из некоторого другого класса.

0
ответ дан Grzenio 27 November 2019 в 00:21
поделиться

Все классы происходят неявно от Object. Тем не менее, хотя статические классы (которые по определению являются просто контейнерами для статических участников) "происходят" из объекта, нет ничего, что можно получить от того факта.

0
ответ дан Anton Gogolev 27 November 2019 в 00:21
поделиться

Сообщение об ошибке вводит в заблуждение.

панель не может наследоваться нечто, потому что нечто можно инстанцировать, и панель не может.

0
ответ дан teedyay 27 November 2019 в 00:21
поделиться

При попытке остановить людей, создающих экземпляры класса, просто добавьте частного конструктора по умолчанию.

0
ответ дан Mark Rendle 27 November 2019 в 00:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: