Вопросы с тегом «methods»

Метод - это блок кода, который выполняет задачу и связан с классом или объектом. Это связано с не объектно-ориентированными понятиями функций и процедур.

6584
Является ли Java «передачей по ссылке» или «передачей по значению»?

Я всегда думал, что Java была по ссылке . Тем не менее, я видел пару постов в блоге (например, этот блог ), которые утверждают, что это не так. Я не думаю, что понимаю разницу, которую они проводят. Какое...

1685
Есть ли причина для повторного использования C # переменной в foreach?

При использовании лямбда-выражений или анонимных методов в C # мы должны опасаться доступа к измененной ловушке замыкания . Например: foreach (var s in strings) { query = query.Where(i => i.Prop == s); // access to modified closure ... } Из-за измененного закрытия приведенный выше код приведет к...

1661
Поддерживает ли Java значения параметров по умолчанию?

Я наткнулся на некоторый код Java, который имел следующую структуру: public MyParameterizedFunction(String param1, int param2) { this(param1, param2, false); } public MyParameterizedFunction(String param1, int param2, boolean param3) { //use all three parameters here } Я знаю, что в C ++ я могу...

911
Java: когда использовать статические методы

Мне интересно, когда использовать статические методы? Скажем, если у меня есть класс с несколькими получателями и установщиками, одним или двумя методами, и я хочу, чтобы эти методы можно было вызывать только на объекте экземпляра класса. Означает ли это, что я должен использовать статический...

746
Отличаться () с лямбда?

Правильно, поэтому у меня есть перечислимое и я хочу получить от него различные значения. Используя System.Linq, конечно, есть метод расширения под названием Distinct. В простом случае его можно использовать без параметров, например: var distinctValues = myStringList.Distinct(); Хорошо, но если у...

696
Передать метод в качестве параметра, используя C #

У меня есть несколько методов с одной и той же сигнатурой (параметры и возвращаемые значения), но разные имена и внутренние методы отличаются. Я хочу передать имя метода для запуска другому методу, который вызовет переданный метод. public int Method1(string) { ... do something return myInt; }...

578
Какой метод работает лучше: .Any () vs .Count ()> 0?

в System.Linqпространстве имен мы можем теперь расширить наши IEnumerable, чтобы иметь методы расширения Any () и Count () . Недавно мне сказали, что если я хочу проверить, что коллекция содержит 1 или более элементов внутри, я должен использовать .Any()метод расширения вместо .Count() > 0метода...

540
Почему восклицательные знаки используются в методах Ruby?

В Ruby некоторые методы имеют вопросительный знак ( ?), который задает вопрос, подобный тому, include?который задается , если включается рассматриваемый объект, а затем возвращает true / false. Но почему некоторые методы имеют восклицательные знаки ( !), а другие нет? Что это...

535
Могу ли я добавить методы расширения в существующий статический класс?

Я фанат методов расширения в C #, но не смог успешно добавить метод расширения в статический класс, такой как Console. Например, если я хочу добавить в консоль расширение, называемое «WriteBlueLine», чтобы я мог перейти: Console.WriteBlueLine("This text is blue"); Я попробовал это, добавив...

499
Почему я не могу определить статический метод в интерфейсе Java?

РЕДАКТИРОВАТЬ: Начиная с Java 8, статические методы теперь разрешены в интерфейсах. Вот пример: public interface IXMLizable<T> { static T newInstanceFromXML(Element e); Element toXMLElement(); } Конечно, это не сработает. Но почему нет? Одной из возможных проблем будет то, что происходит,...

482
Частные методы JavaScript

Чтобы создать класс JavaScript с открытым методом, я бы сделал что-то вроде: function Restaurant() {} Restaurant.prototype.buy_food = function(){ // something here } Restaurant.prototype.use_restroom = function(){ // something here } Таким образом, пользователи моего класса могут: var restaurant =...