Перейти к содержимому

Как можно передать объект методу

  • автор:

Как передать объект в метод java

Для передачи объекта в метод необходимо объявить параметр метода, который будет принимать объект нужного типа. Например:

public void someMethod(MyObject obj)  // тело метода > 

В данном примере метод someMethod принимает объект класса MyObject , передаваемый в качестве аргумента метода. Чтобы передать объект в метод, необходимо создать экземпляр класса, и использовать его в качестве аргумента метода. Например:

MyObject obj = new MyObject(); someMethod(obj); 

Здесь мы создали экземпляр класса MyObject и передали его в метод someMethod . Внутри метода someMethod мы можем работать с переданным объектом, вызывая его методы или обращаясь к его полям.

Как передать объект из одного метода в другой?

Author24 — интернет-сервис помощи студентам

Как передать значение переменной из одного метода в другой?
private void textBox2_TextChanged(object sender, EventArgs e) < char.

Передать переменную из одного метода в другой
Есть класс. В нем 2 метода: пусть будут private void textBox1_TextChanged(object sender.

Передать объект класса как аргумент метода в поток
Имеется класс npimono, код использования: private void loadListButton_Click(object sender.

Эксперт .NET

6408 / 4014 / 1592
Регистрация: 09.05.2015
Сообщений: 9,395

Лучший ответ

Сообщение было отмечено DimaScherb как решение

Решение

1 2 3 4 5 6 7 8 9 10 11 12 13 14
class X { WebBrowser web = new WebBrowser(); private void ToolStripButton6_Click(object sender, EventArgs e) { // web. . } private void SelectionChanged(object sender, EventArgs e) { // web. } }

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как передать переменные из одного класса в другой?
Привет всем! Не могу разобраться с вопросом: я создал программу в WinForms, суть ее в том, что есть.

Как правильно передать метод делегата из одного класса в другой?
Добрый день! Я написал класс который рисует спираль Архимеда в pictureBox. За основу для для.

Передать значение из одного ListView в другой, и на другой форме
Есть две формы и у них есть ListView1 и у Form1 и у Form2 Мне надо что бы выбранный элемент.

Вызов одного метода через другой
Здравствуйте ! У меня такая проблема: есть событие нажатия на кнопку: private void.

Или воспользуйтесь поиском по форуму:

Как можно передать объект методу

Объекты классов, как и данные примитивных типов, могут передаваться в методы. Однако в данном случае есть одна особенность — при передаче объектов в качестве значения передается копия ссылки на область в памяти, где расположен этот объект. Рассмотрим небольшой пример. Пусть у нас есть следующий класс Person:

public class Program < public static void main(String[] args) < Person kate = new Person("Kate"); System.out.println(kate.getName()); // Kate changeName(kate); System.out.println(kate.getName()); // Alice >static void changeName(Person p) < p.setName("Alice"); >> class Person < private String name; Person(String name)< this.name = name; >public void setName(String name) < this.name = name; >public String getName() < return this.name; >>

Здесь в метод changeName передается объект Person, у которого изменяется имя. Так как в метод будет передаваться копия ссылки на область памяти, в которой находится объект Person, то переменная kate и параметр p метода changeName будут указывать на один и тот же объект в памяти. Поэтому после выполнения метода у объекта kate, который передается в метод, будет изменено имя с «Kate» на «Alice».

От этого случая следует отличать другой случай:

public class Program < public static void main(String[] args) < Person kate = new Person("Kate"); System.out.println(kate.getName()); // Kate changePerson(kate); System.out.println(kate.getName()); // Kate - изменения не произошло // kate хранит ссылку на старый объект >static void changePerson(Person p) < p = new Person("Alice"); // p указывает на новый объект p.setName("Ann"); >static void changeName(Person p) < p.setName("Alice"); >> class Person < private String name; Person(String name)< this.name = name; >public void setName(String name) < this.name = name; >public String getName() < return this.name; >>

В метод changePerson также передается копия ссылки на объект Person. Однако в самом методе мы изменяем не отдельные значения объекта, а пересоздаем объект с помощью конструктора и оператора new. В результате в памяти будет выделено новое место для нового объекта Person, и ссылка на этот объект будет привоена параметру p:

static void changePerson(Person p) < p = new Person("Alice"); // p указывает на новый объект p.setName("Ann"); // изменяется новый объект >

То есть после создания нового объекта Person параметр p и переменная kate в методе main будут хранить ссылки на разные объекты. Переменная kate, которая передавалась в метод, продолжит хранить ссылку на старый объект в памяти. Поэтому ее значение не меняется.

Как передать объект в метод класса? Python

Calculator().add_record(r1). Мне сейчас неудобно разжевывать это.

13 июл 2020 в 22:06

Вы не создали экземпляр класса Calculator .

13 июл 2020 в 22:07

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

как написали в комментарии, вы не создали экземпляр класса Calculator , после создания экземпляра класса вы можете обращаться к его методам.

class Calculator: def __init__(self, limit): self.limit = limit self.records = [] def add_record(self, some_record): self.records.append(some_record) class Record: def __init__(self, amount, comment): self.amount = amount self.comment = comment r1 = Record(120, 'Пирожок') с1 = Calculator(10) с1.add_record(r1) 

Отслеживать

73.6k 112 112 золотых знаков 38 38 серебряных знаков 55 55 бронзовых знаков

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *