Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Oliot | Section
C# Perusteiden Jälkeen

bookHaaste: Oliot

Pyyhkäise näyttääksesi valikon

Seuraava ohjelma sisältää kaksi luokkaa, nimittäin Person ja Address.

Lue koodi ja täytä puuttuvat kohdat asianmukaisesti. Tässä tehtävässä sinun tulee selvittää, kuinka pääset käsiksi osoite-olion Country-kenttään, joka sijaitsee address-olion p1-kentässä.

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 {___}."); } }

Jos olion kenttä tallentaa toisen olion, voimme käyttää piste (.) -notaatiota päästäksemme syvemmälle kyseiseen olioon. Esimerkiksi 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}."); } }
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 27

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 1. Luku 27
some-alt