Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio: Objetos | Introdução à Programação Orientada a Objetos (POO)
C# Além do Básico

bookDesafio: Objetos

O programa a seguir contém duas classes, nomeadamente Person e Address.

Leia o código e preencha as lacunas adequadamente. Nesta tarefa, será necessário descobrir como acessar o campo Country do objeto address no campo address do objeto p1.

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
using System; class Person { public string name; public int age; // We can use other classes as datatypes for a field in a class public Address address; // We can use the class itself as a datatype for a field as well public Person father; public Person mother; } class Address { public string Country; public string City; } public class ConsoleApp { public static void Main(string[] args) { Person p1 = new Person(); p1.name = "Mihaly"; p1.age = 21; Person p2 = new Person(); p2.name = "Ann"; p2.age = 52; Person p3 = new Person(); p3.name = "Nagy"; p3.age = 51; p1.mother = p2; p1.father = p3; Address address = new Address(); address.Country = "Hungary"; address.City = "Budapest"; // Assigning the address object to the address field in p1 p1.address = ___; // Note the expression 'p1.address.Country' // p1.address accesses the stored Address object // p1.address.Country accesses the Address object's Country field. Console.WriteLine($"{___} is the son of {p2.name} and {p3.name}. He is from {___}."); } }

Se um campo de um objeto armazena outro objeto, é possível utilizar ainda mais a notação de ponto (.) para acessar níveis mais profundos desse objeto. Por exemplo, objectName.someField.anotherField.

index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
using System; class Person { public string name; public int age; // We can use other classes as datatypes for a field in a class public Address address; // We can use the class itself as a datatype for a field as well public Person father; public Person mother; } class Address { public string Country; public string City; } public class ConsoleApp { public static void Main(string[] args) { Person p1 = new Person(); p1.name = "Mihaly"; p1.age = 21; Person p2 = new Person(); p2.name = "Ann"; p2.age = 52; Person p3 = new Person(); p3.name = "Nagy"; p3.age = 51; p1.mother = p2; p1.father = p3; Address address = new Address(); address.Country = "Hungary"; address.City = "Budapest"; p1.address = address; // Note the expression 'p1.address.Country' // p1.address accesses the stored Address object // p1.address.Country accesses the Address object's Country field. Console.WriteLine($"{p1.name} is the son of {p2.name} and {p3.name}. He is from {p1.address.Country}."); } }
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 6

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 2.04

bookDesafio: Objetos

Deslize para mostrar o menu

O programa a seguir contém duas classes, nomeadamente Person e Address.

Leia o código e preencha as lacunas adequadamente. Nesta tarefa, será necessário descobrir como acessar o campo Country do objeto address no campo address do objeto p1.

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
using System; class Person { public string name; public int age; // We can use other classes as datatypes for a field in a class public Address address; // We can use the class itself as a datatype for a field as well public Person father; public Person mother; } class Address { public string Country; public string City; } public class ConsoleApp { public static void Main(string[] args) { Person p1 = new Person(); p1.name = "Mihaly"; p1.age = 21; Person p2 = new Person(); p2.name = "Ann"; p2.age = 52; Person p3 = new Person(); p3.name = "Nagy"; p3.age = 51; p1.mother = p2; p1.father = p3; Address address = new Address(); address.Country = "Hungary"; address.City = "Budapest"; // Assigning the address object to the address field in p1 p1.address = ___; // Note the expression 'p1.address.Country' // p1.address accesses the stored Address object // p1.address.Country accesses the Address object's Country field. Console.WriteLine($"{___} is the son of {p2.name} and {p3.name}. He is from {___}."); } }

Se um campo de um objeto armazena outro objeto, é possível utilizar ainda mais a notação de ponto (.) para acessar níveis mais profundos desse objeto. Por exemplo, objectName.someField.anotherField.

index.cs

index.cs

copy
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
using System; class Person { public string name; public int age; // We can use other classes as datatypes for a field in a class public Address address; // We can use the class itself as a datatype for a field as well public Person father; public Person mother; } class Address { public string Country; public string City; } public class ConsoleApp { public static void Main(string[] args) { Person p1 = new Person(); p1.name = "Mihaly"; p1.age = 21; Person p2 = new Person(); p2.name = "Ann"; p2.age = 52; Person p3 = new Person(); p3.name = "Nagy"; p3.age = 51; p1.mother = p2; p1.father = p3; Address address = new Address(); address.Country = "Hungary"; address.City = "Budapest"; p1.address = address; // Note the expression 'p1.address.Country' // p1.address accesses the stored Address object // p1.address.Country accesses the Address object's Country field. Console.WriteLine($"{p1.name} is the son of {p2.name} and {p3.name}. He is from {p1.address.Country}."); } }
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 3. Capítulo 6
some-alt