Dlaczego C # został zaprojektowany w ten sposób? Jak rozumiem, interfejs opisuje tylko zachowanie i służy opisaniu zobowiązania umownego dla klas wdrażających interfejs, że określone zachowanie jest realizowane. Jeśli klasy chcą zaimplementować to zachowanie we wspólnej metodzie, dlaczego nie powinny? Oto przykład tego, co mam na myśli: // These items …
Aby być konkretnym, próbowałem tego kodu: package hello; public class Hello { Clock clock = new Clock(); public static void main(String args[]) { clock.sayTime(); } } Ale dał błąd Nie można uzyskać dostępu do pola niestatycznego w metodzie statycznej main Zmieniłem więc deklarację clockna: static Clock clock = new Clock(); …
Pytam w odniesieniu do c #, ale zakładam, że jest tak samo w większości innych języków. Czy ktoś ma dobrą definicję wyrażeń i stwierdzeń i jakie są różnice?
Po raz pierwszy natknąłem się na withinstrukcję Python . Używam Pythona od kilku miesięcy i nawet nie wiedziałem o jego istnieniu! Biorąc pod uwagę jego nieco niejasny status, pomyślałem, że warto zapytać: Do czego służy instrukcja Python with? Do czego tego używasz? Czy są jakieś problemy, o których muszę wiedzieć, …
Komentarze Alana Storma w odpowiedzi na moją odpowiedź dotyczącą withoświadczenia skłoniły mnie do myślenia. Rzadko znajdowałem powód do korzystania z tej konkretnej funkcji języka i nigdy nie zastanawiałem się, w jaki sposób może to powodować problemy. Teraz jestem ciekawy, w jaki sposób mogę skutecznie wykorzystać with, unikając pułapek. Gdzie znalazłeś …
Jak wyjaśniono w aktualizacji 3 tej odpowiedzi , notacja ta: var hash = {}; hash[X] tak naprawdę nie haszy obiektu X; w rzeczywistości po prostu konwertuje Xna ciąg (poprzez, .toString()jeśli jest to obiekt lub inne wbudowane konwersje dla różnych typów pierwotnych), a następnie wyszukuje ten ciąg, bez mieszania go, w …
Krótkie tło: Wiele (najbardziej?) Współczesnych języków programowania w powszechnym użyciu ma co najmniej garstkę ADT [abstrakcyjnych typów danych], w szczególności: ciąg (sekwencja złożona ze znaków) lista (uporządkowany zbiór wartości) oraz typ oparty na mapie (nieuporządkowana tablica odwzorowująca klucze na wartości) W języku programowania R pierwsze dwa są realizowane odpowiednio jako …
Nie dotknąłem Javy od czasu używania JBuilder pod koniec lat 90. na uniwersytecie, więc jestem trochę poza kontaktem - w każdym razie pracowałem nad małym projektem Java w tym tygodniu i używałem Intellij IDEA jako mojego IDE , dla zmiany tempa od mojego regularnego rozwoju .Net. Zauważyłem, że obsługuje dodawanie …
Właśnie spotkałem ciekawą sytuację w JavaScript. Mam klasę z metodą, która definiuje kilka obiektów za pomocą notacji literałowej. Wewnątrz tych obiektów thisużywany jest wskaźnik. Na podstawie zachowania programu wydedukowałem, że thiswskaźnik odnosi się do klasy, na której wywołano metodę, a nie do obiektu tworzonego przez literał. Wydaje się to arbitralne, …
Zastanawiałem się, jakie dokładnie są zasady działania tych dwóch właściwości. Wiem, że drugi jest uniwersalny i zasadniczo nie zajmuje się strefami czasowymi, ale czy ktoś może szczegółowo wyjaśnić, jak działają i który z nich należy zastosować w jakim scenariuszu?
To wypadło dziś w biurze. Nie mam planów zrobienia czegoś takiego, ale teoretycznie czy mógłbyś napisać kompilator w SQL? Na pierwszy rzut oka wydaje mi się, że jest to kompletne, choć niezwykle uciążliwe dla wielu klas problemów. Jeśli nie jest kompletny, czego wymagałoby to, aby się takim stać? Uwaga: nie …
Powiedzmy, że mam ten interfejs: public interface IBox { public void setSize(int size); public int getSize(); public int getArea(); //...and so on } Mam klasę, która to implementuje: public class Rectangle implements IBox { private int size; //Methods here } Gdybym chciał skorzystać z interfejsu IBox, nie mogę w rzeczywistości …
W C # (i wielu innych językach) dostęp do prywatnych pól innych wystąpień tego samego typu jest całkowicie uzasadniony. Na przykład: public class Foo { private bool aBool; public void DoBar(Foo anotherFoo) { if (anotherFoo.aBool) ... } } Ponieważ specyfikacja C # (sekcje 3.5.1, 3.5.2) stwierdza, że dostęp do pól …
Zawsze jestem zaskoczony, że nawet po używaniu C # przez cały ten czas wciąż udaje mi się znaleźć rzeczy, o których nie wiedziałem ... Próbowałem poszukać tego w Internecie, ale użycie „~” w wyszukiwaniu nie działa tak dobrze i nie znalazłem również niczego w MSDN (nie mówiąc, że go tam …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.