Объектно-ориентирование программирование

Определение классов/структур с методами

Последнее обновление: 01.05.2024

C++

C#

Dart

F#

JavaScript

Kotlin

Python

Rust

C++

#include <iostream>

// типовой класс
class Person 
{
private:
    std::string name{};
    unsigned age{};
public:
    void print() 
    {
        std::cout << "Name: " << name << "\tAge: " << age << std::endl;
    }
    Person(std::string p_name, unsigned p_age)
    {
        name = p_name;
        age = p_age;
    }
};
int main()
{
    Person tom{"Tom", 38};
    tom.print();
}

C#

#include <iostream>

Person tom = new("Tom", 38);
tom.Print();

// типовой класс
class Person 
{
    string name;
    uint age;
    public Person(string p_name, uint p_age)
    {
        name = p_name;
        age = p_age;
    }
    public void Print() 
    {
        Console.WriteLine($"Name: {name} \tAge: {age}");
    }
}

Dart

class Person{

	String name = "";
	int age = 0;
	
    Person(String name, int age)
    {
        this.name = name; 
        this.age = age;
    }
	
    void display(){
        print("Name: $name \tAge: $age");
    }
}

void main() {
     
    Person tom = Person("Tom", 38);
    tom.display();  // Name: Tom       Age: 38
}

F#

type Person (name, age) = 
    member _.Print() = printfn $"Name: {name}  Age: {age}"

let tom = Person("Tom", 38)
tom.Print()         // Name: Tom       Age: 38

JavaScript

Синтаксис классов:

class Person{
 
    constructor(pName, pAge){
        this.name = pName;
        this.age = pAge;
    }
    print(){
        console.log(`Name: ${this.name}  Age: ${this.age}`);
    }
}
const tom = new Person("Tom", 39);
tom.print();

Использование функций-конструкторов в JavaScript также позволяет определять новые типы аналогично классам:

function Person(pName, pAge) {
	this.name = pName;
	this.age = pAge;
	this.print = function(){
		console.log(`Name: ${this.name}  Age: ${this.age}`);
	};
}
const tom = new Person("Tom", 39);
tom.print();

Kotlin

fun main() {
    val tom = Person("Tom", 38);
    tom.display();  // Name: Tom       Age: 38
}
class Person(var name: String, var age: Int) {
    fun display() = print("Name: $name \tAge: $age")
}

Python

class Person:
 
    def __init__(self, name, age):
        self.name = name
        self.age = age 
     
    def display(self):
        print(f"Name: {self.name}  Age: {self.age}")
 
 
tom = Person("Tom", 38)
tom.display()  # Name: Tom       Age: 38

Rust

fn main(){
     
    let tom = Person{
        name: "Tom".to_string(),
        age: 38
    };
    tom.display();
}
struct Person
{
    name: String,
    age: u8 
}
impl Person{
    fn display(&self){
        println!("Name: {}  Age: {}", &self.name, &self.age);
    }
}
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850