Class (computer programming) (original) (raw)
Unter einer Klasse (auch Objekttyp genannt) versteht man in der objektorientierten Programmierung ein abstraktes Modell bzw. einen Bauplan für eine Reihe von ähnlichen Objekten. Die Klasse dient als Bauplan für die Abbildung von realen Objekten in Softwareobjekte und beschreibt Attribute (Eigenschaften) und Methoden (Verhaltensweisen) der Objekte. Verallgemeinernd könnte man auch sagen, dass eine Klasse dem Datentyp eines Objekts entspricht.
Property | Value |
---|---|
dbo:abstract | الفصيلة أو الصنف أو الفئة («القالب» بالترجمة الغير حرفية) (بالإنجليزية: Class) ويعني في البرمجة الكائنية التوجه «Object Orianted Programming» قالبًا بشفرة برمجية «program-code-template» ويمثل المخطط الأولي لإنشاء الكائنات «Objects»، حيث يحدد هذا المخطط مجموعة الخصائص (Attributes) والوظائف (Methods) التي سوف تتشاركها جميع الكائنات التي ستُنشَأ من هذا الصنف، ويقوم بتوفير القيم الأولية داخل هذا الصنف «Member variable» والسلوك الُمطَبَّق (الوظائف أو الطرق للأعضاء) «member functions or methods» من ناتج هذا الصنف (قالب الفصيلة) .يمثل الصنف (قالب الفصيلة) اسما في الحياة الملموسة أو التخيلية مثل «السيارة» أو «التيار الكهربائي». يختزل الصنف جميع العمليات الأساسية والمعلومات عن الفصيلة (مثال فصيلة السيارات يمكن أن ينتج كائنا Object مثل سيارة صغيرة وسيارة كبيرة وسيارة مكشوفة وسيارة رياضية وسيارة بثلاثة أبواب وسيارة بمقصورة إلخ)، ولا يمكن الوصول إلى المعلومات وتغييرها إلا من خلال العمليات الأساسية أو الاقترانات المصاحبة للصنف (Class)، كمثال آخر على ذلك فإن المواطن هو فصيلة بالنسبة لوزارة الداخلية، المواطن يحتوي على معلومات مثل الاسم وتاريخ الميلاد وتاريخ الوفاة إلخ. في حالة الحاجة إلى تغيير معلومة معينة فإن ذلك لا يحصل من أي مكان بل يحصل من خلال طلب رسمي إلى الوزارة (عملية أساسية أو اقتران) يحوي الوثائق اللازمة (المعطيات أو المدخلات [input parameters]) ومن ثم يحصل التعديل، في كثير من لغات البرمجة يستخدم اسم الصنف (الفصيلة class) كاسم الباني «Constructor» وهو الذي يعطينا الكائن «object» الناتج من الصنف. الباني هو عبارة عن مجموعة من الإجراءات أو الشفرة داخل دالة «Function أو Subroutine» بنفس اسم الصنف، وهو ما ينشئ الكائنات «objects»، أنواع الكائنات الناتجة تسمى «instance» الصنف. (المفاهيم السابقة يجب دراستها بعناية). ومن الممكن أن يُعَرَّفَ الصنف من ناحية أخرى بأنه مجموعة من المعلومات المترابطة عن شيء معين. والصنف يتكون من واجهة توصيل [interface] لتعريف كيفية ربط الصنف مع الكائنات الأخرى والبنية التي تصف كيفية بناء الصنف والمكونة من العمليات الأساسية والمعلومات حول الصنف، جميع لغات البرمجة الحديثة تدعم العمليات مصاحبة لصنف مثل الوراثة، لكنها في السابق كانت محدودة وتخضع للعديد من المعوقات. (ar) En programació orientada a objectes, una classe és una construcció d'un llenguatge de programació usada per agrupar camps relacionats i mètodes. Està conceptualment relacionat amb classes de la teoria de conjunts. Una classe és un paquet cohesionat que consisteix en un tipus concret de metadada. Descriu les regles que marquen el comportament de l'objecte; les referències a aquests objectes són fetes com a d'una classe. Una classe té tant una interfície com una estructura. La interfície descriu com es pot interaccionar amb la classe i la instància a través de mètodes, mentre l'estructura descriu com es divideix la dada en camps dintre de la instància. Una classe és el tipus més específic d'un objecte en relació a una capa en concret. Una classe també pot tenir una representació en temps d'execució, que proveeix suport per manipular la metadada relativa a la classe. Els llenguatges de programació que donen suport a les classes tenen diferències subtils en com donen suport a les diferents funcionalitats pròpies de les classes. La majoria donen suport a diferents formes d'herència. Molts llenguatges també donen suport a les funcionalitats que aporta l'encapsulació, per exemple, els especificadors d'accés. (ca) Třída je základní konstrukční prvek objektově orientovaného programování sloužící jako předpis pro vznik objektu jako instance třídy. Může odpovídat pojmům z reálného světa, tj. v informačním systému realizovaném programem psaném v objektově orientovaném jazyce mohou existovat třídy Zákazník, Objednávka, Faktura apod. Třída definuje vlastnosti (atributy) a metody (též funkce) objektů, které při běhu programu vzniknou (též instancí). Hodnoty vlastností (atributů) se mohou u jednotlivých instancí objektů odlišovat (každá instance Objednávky může mít jinou celkovou cenu), na každém objektu (vzniklém z jedné třídy) můžeme zavolat (použít) shodnou sadu metod. UML zavádí dva typy vztahů mezi třídami – asociaci a generalizaci. * asociace vyjadřuje budoucí vztahy mezi instancemi, které ze tříd (spojených asociací) vzniknou * generalizace (též dědičnost) vyjadřuje vztah mezi třídami, který se při běhu programu projeví v okamžiku instancializace (vzniku objektu) (cs) Unter einer Klasse (auch Objekttyp genannt) versteht man in der objektorientierten Programmierung ein abstraktes Modell bzw. einen Bauplan für eine Reihe von ähnlichen Objekten. Die Klasse dient als Bauplan für die Abbildung von realen Objekten in Softwareobjekte und beschreibt Attribute (Eigenschaften) und Methoden (Verhaltensweisen) der Objekte. Verallgemeinernd könnte man auch sagen, dass eine Klasse dem Datentyp eines Objekts entspricht. (de) Klasoj estas elementoj de objektema programado. Klasoj difinas kiujn datumojn kaj kiujn funkciojn la objektoj havos. En objektemaj programlingvoj, oni povas krei hierarĥiojn de klasoj por bone reprezenti en la programo la konceptojn de la reala mondo. Post la difino de klaso laŭ la bezonoj de la programo, la programisto povas krei plurajn objektojn, kiuj havos malsamajn datumojn. Supozu ke oni kreas mesaĝprogramon. La programo devos prilabori multajn mesaĝojn, do la programisto povas krei klason nomatan Mesagxo (en C++): class Mesagxo { public: std::string titolo, sendanto, ricevanto, teksto; Mesagxo(const std::string & titol, const std::string & sendant, const std::string & ricevant, const std::string & tekst); void sendi; }; Tiu klaso havas kelkajn datumojn (titolo, sendanto, ktp.) kaj du funkciojn: la unua estas la konstruilo, por konstrui novan objekton kaj plenigi ĝiajn datumojn; la dua funkcio nomiĝas sendi, kiu, supozeble, sendas la mesaĝon laŭ la datumoj ekzistantaj en la objekto. Kompreneble, en vera programo, la klaso havus pli da funkcioj kaj datumoj, kaj oni devus skribi la kodon por sendi la mesaĝon. Tiamaniere, la programisto facile kununuigas ĉiujn aferojn, kiuj rilatas al mesaĝoj. La programisto nur bezonas voki la funkciojn (ankaŭ nomatajn "metodoj") por trakti ĉiujn objektojn de la klaso Mesagxo. (eo) In object-oriented programming, a class is an extensible program-code-template for creating objects, providing initial values for state (member variables) and implementations of behavior (member functions or methods). In many languages, the class name is used as the name for the class (the template itself), the name for the default constructor of the class (a subroutine that creates objects), and as the type of objects generated by instantiating the class; these distinct concepts are easily conflated. Although, to the point of conflation, one could argue that is a feature inherent in a language because of its polymorphic nature and why these languages are so powerful, dynamic and adaptable for use compared to languages without polymorphism present. Thus they can model dynamic systems (i.e. the real world, machine learning, AI) more easily. When an object is created by a constructor of the class, the resulting object is called an instance of the class, and the member variables specific to the object are called instance variables, to contrast with the class variables shared across the class. In certain languages, classes are, as a matter of fact, only a compile-time feature (new classes cannot be declared at run-time), while in other languages classes are first-class citizens, and are generally themselves objects (typically of type Class or similar). In these languages, a class that creates classes within itself is called a metaclass. (en) En informática, una clase es una plantilla para el objetivo de la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para representar entidades o conceptos, como los sustantivos en el lenguaje. Cada clase es un modelo que define un conjunto de y métodos apropiados para operar con dichos datos. Cada objeto creado a partir de la clase se denomina instancia de la clase. La programación orientada a objetos es la base principal para los tipos de objetos. Permiten abstraer los datos y sus operaciones asociadas al modo de una caja negra. Los lenguajes de programación que soportan clases difieren sutilmente en su soporte para diversas características relacionadas con clases. La mayoría soportan diversas formas de herencia. Muchos lenguajes también soportan características para proporcionar encapsulación, como especificadores de acceso. Una clase también puede tener una representación (metaobjeto) en tiempo de ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de los metadatos relacionados con la clase. (es) En programmation orientée objet, la déclaration d'une classe regroupe des membres, méthodes et propriétés (attributs) communs à un ensemble d'objets. La classe déclare, d'une part, des attributs représentant l'état des objets et, d'autre part, des méthodes représentant leur comportement. Une classe représente donc une catégorie d'objets. Elle apparaît aussi comme un moule ou une usine à partir de laquelle il est possible de créer des objets ; c'est en quelque sorte une « boîte à outils » qui permet de fabriquer un objet. On parle alors d'un objet en tant qu'instance d'une classe (création d'un objet ayant les propriétés de la classe). Il est possible de restreindre l'ensemble d'objets représenté par une classe A grâce à un mécanisme d'héritage. Dans ce cas, on crée une nouvelle classe B liée à la classe A et qui ajoute de nouvelles propriétés. Dans ce cas, différents termes sont utilisés : (fr) Dalam pemrograman berorientasi objek, kelas adalah cetak biru untuk membuat objek. Kelas menentukan apa yang dimiliki sebuah objek (atribut) dan apa yang dapat dilakukan objek (metode). Umumnya kelas mewakili sebuah kata benda yang dapat merupakan seseorang, hewan, buah, ataupun benda mati. Contohnya adalah kelas Pegawai. Kelas Pegawai mempunyai atribut berupa nama, usia, dan jenis kelamin serta memiliki metode bekerja. (in) 클래스(class, 어원: classification)는 객체 지향 프로그래밍(OOP)에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 일종의 틀(template)이다. 객체를 정의하기 위한 메소드와 변수로 구성된다. 템플릿을 사용하면 객체를 분류할 때 멤버의 자료형을 미리 정하지 않고 객체를 사용할 때 결정할 수 있다. 이를 통해 클래스나 변수의 중복 정의를 하지 않아도 되므로 효율적으로 코딩이 가능하다. 객체는 클래스로 규정된 인스턴스로서, 변수 대신 실제값을 가진다. 클래스는 OOP를 정의하는 개념 중 하나인데, 클래스에 대한 중요한 몇가지의 개념들은 다음과 같다. 클래스는 전부 혹은 일부를 그 클래스 특성으로부터 상속받는 서브클래스를 가질 수 있으며, 클래스는 각 서브클래스에 대해 수퍼클래스가 된다. 서브클래스는 자신만의 메소드와 변수를 정의할 수도 있다. 이러한 클래스와 그 서브클래스 간의 구조를 "클래스 계층(hierarchy)"이라 한다. (ko) Klasa – częściowa lub całkowita definicja dla obiektów. Definicja obejmuje dopuszczalny stan obiektów oraz ich zachowania. Obiekt, który został stworzony na podstawie danej klasy nazywany jest jej instancją. Klasy mogą być typami języka programowania – przykładowo, instancja klasy Owoc będzie mieć typ Owoc. Klasy posiadają zarówno interfejs, jak i strukturę. Interfejs opisuje, jak komunikować się z jej instancjami za pośrednictwem metod, zaś struktura definiuje sposób mapowania stanu obiektu na elementarne atrybuty. Zależnie od implementacji, klasy mogą istnieć w programie tylko na etapie jego kompilacji, w wyniku której są tłumaczone na kod strukturalny lub też posiadać swoją reprezentację w kodzie wynikowym w postaci . Za ich pomocą program może odczytywać i manipulować informacjami o klasie podczas wykonywania. Języki programowania implementujące klasy różnią się pod względem oferowanej funkcjonalności. Większość z nich wspiera różne formy dziedziczenia oraz hermetyzacji. (pl) オブジェクト指向プログラミングにおけるクラス(英: class)は、オブジェクトを生成するための設計図あるいはひな形に相当するものである。抽象データ型の一つ。クラスから生成したオブジェクトの実体のことをインスタンスという。 クラスには、クラス自身またはクラスのインスタンスが保持するデータと、データに関連したオブジェクトの振る舞いを記述できる。プログラミング言語によっては、それぞれにを指定できる。統一モデリング言語 (UML) のクラス図では、データのことを「属性」、振る舞いのことを「操作」と呼ぶ。Javaなどでは、データのことを「フィールド」、振る舞いのことを「メソッド」と呼ぶ。C++などでは、データのことを「メンバー変数」、振る舞いのことを「メンバー関数」と呼ぶ。 クラスは、クラスベースのオブジェクト指向プログラミングの基本である。また、オブジェクト指向プログラミングにおけるカプセル化・継承・ポリモーフィズムなどを、クラスベースのオブジェクト指向プログラミングにおいてはクラスを必要に応じて適宜使って実装する。一方、カプセル化・継承・ポリモーフィズムなどを、プロトタイプベースのオブジェクト指向プログラミングにおいてはクラスを使わずに実装する。 プログラミング言語におけるクラスのサポートは、オーレ=ヨハン・ダールによってSimula 67において初めて導入された。この時点ではまだオブジェクト指向の概念や用語は確立されていなかったが、のちにSimulaの影響を受けたビャーネ・ストロヴストルップのC++と、アラン・ケイのSmalltalkによってオブジェクト指向が再定義されることになる。 (ja) Een klasse in de zin van de objectoriëntatie is een mechanisme dat in bepaalde, objectgeoriënteerde programmeertalen gebruikt wordt om de en interface van een verzameling objecten vast te leggen. Een klasse wordt ook wel omschreven als een sjabloon voor objecten. (nl) Una classe, nella programmazione orientata agli oggetti, è un costrutto di un linguaggio di programmazione usato come modello per creare oggetti, modello comprende attributi e metodi che saranno condivisi da tutti gli oggetti creati (istanze) a partire dalla classe. Un oggetto è, di fatto, l'istanza di una classe. Una classe è identificabile come un tipo di dato astratto che può rappresentare una persona, un luogo oppure una cosa, ed è quindi l'astrazione di un concetto, implementata in un software. Fondamentalmente, essa definisce al proprio interno lo stato, i cui dati sono memorizzati nelle cosiddette variabili membro o attributi, e il comportamento dell'entità di cui è rappresentazione, descritto da blocchi di codice riutilizzabili chiamati metodi. (it) Em programação e na orientação a objetos, uma classe é um Tipo abstrato de Dados (TAD); ou seja, uma descrição que abstrai um conjunto de objetos com características similares (um projeto do objeto), é um código da linguagem de programação orientada a objetos que define e implementa um novo tipo de objeto, que terão características (atributos) que guardaram valores e, também funções específicas para manipular estes. Formalmente, é um conceito que encapsula abstrações de dados e procedimentos que descrevem o conteúdo e o comportamento de entidades do mundo real, representadas por objetos. De outra forma, uma classe pode ser definida como uma descrição das propriedades ou estados possíveis de um conjunto de objetos, bem como os comportamentos ou ações aplicáveis a estes mesmos objetos. A classe é um elemento primordial de um diagrama de classes; modelagem importante na programação orientada a objetos. (pt) Klass är i objektorienterad programmering ett avsnitt programkod som samlar en mängd relaterade attribut och funktioner, även kallat metoder. Det är ett viktigt kännetecken för en klass att dess inre struktur inte är tillgänglig utanför klassen, utan den kan enbart manipuleras genom ett specificerat gränssnitt. Fenomenet att en klass privata delar ej är tillgängliga utanför kallas inkapsling (eng. encapsulation). En klass kan sägas vara en användardefinierad datatyp, som alltså kompletterar de fördefinierade datatyperna, i C++ till exempel int och char. För att de klasserna skall likna just användardefinierade datatyper använder man i vissa språk överlagring av operatorer för klasser. (sv) Класс — в объектно-ориентированном программировании, модель для создания объектов определённого типа, описывающая их структуру (набор полей и их начальное состояние) и определяющая алгоритмы (функции или методы) для работы с этими объектами. Иными словами, класс служит средством для введения абстрактных типов данных в программный проект. Другие описатели абстрактных типов данных — метаклассы, интерфейсы, структуры, перечисления, — характеризуются какими-то своими особенностями.Суть отличия классов состоит в том, что при задании типа данных, класс определяет одновременно как интерфейс, так и реализацию для всех своих экземпляров (т.е. объектов), поэтому вызов метода-конструктора обязателен. Класс является одним из ключевых понятий в ООП, но существуют и бесклассовые объектно-ориентированные языки, например, Self, JavaScript, Lua, (подробнее смотрите Прототипное программирование). На практике объектно-ориентированное программирование сводится к созданию некоторого количества классов, включая интерфейс и реализацию, и последующему их использованию. Графическое представление некоторого количества классов и связей между ними называется диаграммой классов. Объектно-ориентированный подход за время своего развития накопил множество рекомендаций (паттернов) по созданию классов и иерархий классов. Идея классов пришла из работ по базам знаний, имеющих отношение к исследованиям по искусственному интеллекту. Используемые человеком классификации в зоологии, ботанике, химии, деталях машин, несут в себе основную идею, что любую вещь всегда можно представить частным случаем некоторого более общего понятия. Конкретное яблоко — это в целом некоторое яблоко, вообще яблоко, а любое вообще яблоко — фрукт. (Яблоки и груши - частый пример классов в учебных пособиях по объектно-ориентированному программированию.) Везде далее слова «класс», «объект», «интерфейс» и «структура» будут употребляться в своих специальных значениях, заданных в рамках ООП. (ru) В об'єктно-орієнтованому програмуванні, клас — це спеціальна конструкція, яка використовується для групування пов'язаних змінних та функцій. При цьому, згідно з термінологією ООП, глобальні змінні класу (члени-змінні) називаються полями даних (також властивостями або атрибутами), а члени-функції називають методами класу. Створений та ініціалізований екземпляр класу називають об'єктом класу. На основі одного класу можна створити безліч об'єктів, що відрізнятимуться один від одного своїм станом (значеннями полів). В Unified Modeling Language класи зображуються діаграми класів. (uk) 类(英語:class)在物件導向程式設計中是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的特性和方法。 类的更严格的定义是由某种特定的元数据所组成的内聚的包。它描述了一些对象的行为规则,而这些对象就被称为该类的实例。类有接口和结构。接口描述了如何通过方法与类及其实例互操作,而结构描述了一个实例中数据如何划分为多个属性。类是与某个层的对象的最具体的类型。类还可以有运行时表示形式(元对象),它为操作与类相关的元数据提供了运行时支持。 支持类的编程语言在支持与类相关的各种特性方面都多多少少有一些微妙的差异。大多数都支持不同形式的类继承。许多语言还支持提供封装性的特性,比如访问修饰符。类的出现,为面向对象编程的三个最重要的特性(封装性、继承性、多态性),提供了实现的手段。 (zh) |
dbo:thumbnail | wiki-commons:Special:FilePath/Oop-uml-class-example.png?width=300 |
dbo:wikiPageExternalLink | http://www.open-std.org/jtc1/sc22/wg21/ http://www.laputan.org/reflection/warfare.html https://archive.org/details/designpatternsel00gamm http://mitpress.mit.edu/books/foundations-object-oriented-languages http://lucacardelli.name/TheoryOfObjects.html |
dbo:wikiPageID | 7392 (xsd:integer) |
dbo:wikiPageLength | 51462 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1120051831 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:Python_(programming_language) dbr:Ruby_(programming_language) dbr:Member_variable dbr:Method_(computer_programming) dbr:Mutator_method dbr:Metaobject dbr:Method_overriding dbr:Visual_Basic_.NET dbr:Inner_class dbr:Interface_(Java) dbr:List_of_object-oriented_programming_languages dbr:.NET_Framework dbr:Run_time_(program_lifecycle_phase) dbr:Nominalization dbr:Object-oriented_analysis_and_design dbr:Object-oriented_modeling dbr:Object-oriented_programming dbr:Constructor_(object-oriented_programming) dbr:Object_(object-oriented_programming) dbr:Anonymous_function dbr:Smalltalk dbr:Subroutine dbr:Common_Lisp_Object_System dbr:Compile_time dbr:Friend_function dbr:Static_variable dbr:String_(computer_science) dbr:Automatic_variable dbr:Banana dbr:C++ dbr:C_Sharp_(programming_language) dbr:Tree_(graph_theory) dbr:Type_signature dbr:Type_system dbr:Data_structure dbr:Web_Ontology_Language dbr:Has-a dbr:Layer_(object-oriented_design) dbr:Data_(computing) dbr:Data_type dbr:Abstract_method dbr:PHP dbr:Unified_Modeling_Language dbr:Source_code dbr:Source_code_editor dbr:Property_(programming) dbr:Protocol_(object-oriented_programming) dbr:Prototype-based_programming dbr:Attribute_(computing) dbr:Is-a dbr:Java_(programming_language) dbc:Class_(computer_programming) dbc:Programming_constructs dbc:Programming_language_topics dbr:Superset dbr:Java_syntax dbr:Trait_(computer_programming) dbr:Mixin dbr:Directed_acyclic_graph dbr:Aspect-oriented_programming dbr:Association_(object-oriented_programming) dbr:Automatic_programming dbr:Software_framework dbr:Class-based_programming dbr:Class_diagram dbr:Class_invariant dbr:Class_variable dbr:Field_(computer_science) dbr:Encapsulation_(object-oriented_programming) dbr:Meta-object_protocol dbr:Instance_(computer_science) dbr:Instance_variable dbr:Metaclass dbr:Microsoft dbr:Objective-C dbr:Semantic_web dbr:Multiple_inheritance dbr:Separation_of_concerns dbr:Visual_Basic dbr:Factory_method_pattern dbr:Object_lifetime dbr:Run-time_type_information dbr:First-class_citizen dbr:Typedef dbr:Scope_(programming) dbr:Subset dbr:Precompilation dbr:Level_of_abstraction dbr:Access_specifiers dbr:Accessor_method dbr:Design_pattern_(computer_science) dbr:Reflection_(computer_science) dbr:Virtual_method dbr:Visual_designer dbr:Instantiation_(computer_science) dbr:Object-based_languages dbr:Unified_Modelling_Language dbr:Executable_program dbr:Member_function dbr:WinRT dbr:File:Oop-uml-class-example.png dbr:NSData_alloc]_initWithContentsOfURL:[NSURL_URLWithString:sourceURLString |
dbp:wikiPageUsesTemplate | dbt:Types_of_programming_languages dbt:Citation_needed dbt:Cite_book dbt:Code dbt:Further dbt:ISBN dbt:Main dbt:Mono dbt:Portal dbt:Redirect dbt:Refbegin dbt:Refend dbt:Reflist dbt:Sfn dbt:Short_description dbt:Snd dbt:Unreferenced_section dbt:Vanchor dbt:Google_books dbt:Mdashb dbt:Data_types dbt:Java |
dct:subject | dbc:Class_(computer_programming) dbc:Programming_constructs dbc:Programming_language_topics |
rdf:type | yago:Abstraction100002137 yago:Cognition100023271 yago:Communication100033020 yago:Concept105835747 yago:Content105809192 yago:Idea105833840 yago:Message106598915 yago:PsychologicalFeature100023100 yago:Subject106599788 yago:WikicatProgrammingConstructs yago:WikicatProgrammingLanguageTopics |
rdfs:comment | Unter einer Klasse (auch Objekttyp genannt) versteht man in der objektorientierten Programmierung ein abstraktes Modell bzw. einen Bauplan für eine Reihe von ähnlichen Objekten. Die Klasse dient als Bauplan für die Abbildung von realen Objekten in Softwareobjekte und beschreibt Attribute (Eigenschaften) und Methoden (Verhaltensweisen) der Objekte. Verallgemeinernd könnte man auch sagen, dass eine Klasse dem Datentyp eines Objekts entspricht. (de) Dalam pemrograman berorientasi objek, kelas adalah cetak biru untuk membuat objek. Kelas menentukan apa yang dimiliki sebuah objek (atribut) dan apa yang dapat dilakukan objek (metode). Umumnya kelas mewakili sebuah kata benda yang dapat merupakan seseorang, hewan, buah, ataupun benda mati. Contohnya adalah kelas Pegawai. Kelas Pegawai mempunyai atribut berupa nama, usia, dan jenis kelamin serta memiliki metode bekerja. (in) 클래스(class, 어원: classification)는 객체 지향 프로그래밍(OOP)에서 특정 객체를 생성하기 위해 변수와 메소드를 정의하는 일종의 틀(template)이다. 객체를 정의하기 위한 메소드와 변수로 구성된다. 템플릿을 사용하면 객체를 분류할 때 멤버의 자료형을 미리 정하지 않고 객체를 사용할 때 결정할 수 있다. 이를 통해 클래스나 변수의 중복 정의를 하지 않아도 되므로 효율적으로 코딩이 가능하다. 객체는 클래스로 규정된 인스턴스로서, 변수 대신 실제값을 가진다. 클래스는 OOP를 정의하는 개념 중 하나인데, 클래스에 대한 중요한 몇가지의 개념들은 다음과 같다. 클래스는 전부 혹은 일부를 그 클래스 특성으로부터 상속받는 서브클래스를 가질 수 있으며, 클래스는 각 서브클래스에 대해 수퍼클래스가 된다. 서브클래스는 자신만의 메소드와 변수를 정의할 수도 있다. 이러한 클래스와 그 서브클래스 간의 구조를 "클래스 계층(hierarchy)"이라 한다. (ko) Een klasse in de zin van de objectoriëntatie is een mechanisme dat in bepaalde, objectgeoriënteerde programmeertalen gebruikt wordt om de en interface van een verzameling objecten vast te leggen. Een klasse wordt ook wel omschreven als een sjabloon voor objecten. (nl) Klass är i objektorienterad programmering ett avsnitt programkod som samlar en mängd relaterade attribut och funktioner, även kallat metoder. Det är ett viktigt kännetecken för en klass att dess inre struktur inte är tillgänglig utanför klassen, utan den kan enbart manipuleras genom ett specificerat gränssnitt. Fenomenet att en klass privata delar ej är tillgängliga utanför kallas inkapsling (eng. encapsulation). En klass kan sägas vara en användardefinierad datatyp, som alltså kompletterar de fördefinierade datatyperna, i C++ till exempel int och char. För att de klasserna skall likna just användardefinierade datatyper använder man i vissa språk överlagring av operatorer för klasser. (sv) В об'єктно-орієнтованому програмуванні, клас — це спеціальна конструкція, яка використовується для групування пов'язаних змінних та функцій. При цьому, згідно з термінологією ООП, глобальні змінні класу (члени-змінні) називаються полями даних (також властивостями або атрибутами), а члени-функції називають методами класу. Створений та ініціалізований екземпляр класу називають об'єктом класу. На основі одного класу можна створити безліч об'єктів, що відрізнятимуться один від одного своїм станом (значеннями полів). В Unified Modeling Language класи зображуються діаграми класів. (uk) 类(英語:class)在物件導向程式設計中是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的特性和方法。 类的更严格的定义是由某种特定的元数据所组成的内聚的包。它描述了一些对象的行为规则,而这些对象就被称为该类的实例。类有接口和结构。接口描述了如何通过方法与类及其实例互操作,而结构描述了一个实例中数据如何划分为多个属性。类是与某个层的对象的最具体的类型。类还可以有运行时表示形式(元对象),它为操作与类相关的元数据提供了运行时支持。 支持类的编程语言在支持与类相关的各种特性方面都多多少少有一些微妙的差异。大多数都支持不同形式的类继承。许多语言还支持提供封装性的特性,比如访问修饰符。类的出现,为面向对象编程的三个最重要的特性(封装性、继承性、多态性),提供了实现的手段。 (zh) الفصيلة أو الصنف أو الفئة («القالب» بالترجمة الغير حرفية) (بالإنجليزية: Class) ويعني في البرمجة الكائنية التوجه «Object Orianted Programming» قالبًا بشفرة برمجية «program-code-template» ويمثل المخطط الأولي لإنشاء الكائنات «Objects»، حيث يحدد هذا المخطط مجموعة الخصائص (Attributes) والوظائف (Methods) التي سوف تتشاركها جميع الكائنات التي ستُنشَأ من هذا الصنف، ويقوم بتوفير القيم الأولية داخل هذا الصنف «Member variable» والسلوك الُمطَبَّق (الوظائف أو الطرق للأعضاء) «member functions or methods» من ناتج هذا الصنف (قالب الفصيلة) .يمثل الصنف (قالب الفصيلة) اسما في الحياة الملموسة أو التخيلية مثل «السيارة» أو «التيار الكهربائي». يختزل الصنف جميع العمليات الأساسية والمعلومات عن الفصيلة (مثال فصيلة السيارات يمكن أن ينتج كائنا Object مثل سيارة صغيرة وسيارة كبيرة وسيارة مكشوفة وسيارة رياضية وسيارة ب (ar) En programació orientada a objectes, una classe és una construcció d'un llenguatge de programació usada per agrupar camps relacionats i mètodes. Està conceptualment relacionat amb classes de la teoria de conjunts. Els llenguatges de programació que donen suport a les classes tenen diferències subtils en com donen suport a les diferents funcionalitats pròpies de les classes. La majoria donen suport a diferents formes d'herència. Molts llenguatges també donen suport a les funcionalitats que aporta l'encapsulació, per exemple, els especificadors d'accés. (ca) Třída je základní konstrukční prvek objektově orientovaného programování sloužící jako předpis pro vznik objektu jako instance třídy. Může odpovídat pojmům z reálného světa, tj. v informačním systému realizovaném programem psaném v objektově orientovaném jazyce mohou existovat třídy Zákazník, Objednávka, Faktura apod. Třída definuje vlastnosti (atributy) a metody (též funkce) objektů, které při běhu programu vzniknou (též instancí). Hodnoty vlastností (atributů) se mohou u jednotlivých instancí objektů odlišovat (každá instance Objednávky může mít jinou celkovou cenu), na každém objektu (vzniklém z jedné třídy) můžeme zavolat (použít) shodnou sadu metod. (cs) Klasoj estas elementoj de objektema programado. Klasoj difinas kiujn datumojn kaj kiujn funkciojn la objektoj havos. En objektemaj programlingvoj, oni povas krei hierarĥiojn de klasoj por bone reprezenti en la programo la konceptojn de la reala mondo. Post la difino de klaso laŭ la bezonoj de la programo, la programisto povas krei plurajn objektojn, kiuj havos malsamajn datumojn. Supozu ke oni kreas mesaĝprogramon. La programo devos prilabori multajn mesaĝojn, do la programisto povas krei klason nomatan Mesagxo (en C++): (eo) In object-oriented programming, a class is an extensible program-code-template for creating objects, providing initial values for state (member variables) and implementations of behavior (member functions or methods). In many languages, the class name is used as the name for the class (the template itself), the name for the default constructor of the class (a subroutine that creates objects), and as the type of objects generated by instantiating the class; these distinct concepts are easily conflated. Although, to the point of conflation, one could argue that is a feature inherent in a language because of its polymorphic nature and why these languages are so powerful, dynamic and adaptable for use compared to languages without polymorphism present. Thus they can model dynamic systems (i.e. (en) En programmation orientée objet, la déclaration d'une classe regroupe des membres, méthodes et propriétés (attributs) communs à un ensemble d'objets. La classe déclare, d'une part, des attributs représentant l'état des objets et, d'autre part, des méthodes représentant leur comportement. Il est possible de restreindre l'ensemble d'objets représenté par une classe A grâce à un mécanisme d'héritage. Dans ce cas, on crée une nouvelle classe B liée à la classe A et qui ajoute de nouvelles propriétés. Dans ce cas, différents termes sont utilisés : (fr) En informática, una clase es una plantilla para el objetivo de la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para representar entidades o conceptos, como los sustantivos en el lenguaje. Cada clase es un modelo que define un conjunto de y métodos apropiados para operar con dichos datos. Cada objeto creado a partir de la clase se denomina instancia de la clase. Una clase también puede tener una representación (metaobjeto) en tiempo de ejecución, que proporciona apoyo en tiempo de ejecución para la manipulación de los metadatos relacionados con la clase. (es) Una classe, nella programmazione orientata agli oggetti, è un costrutto di un linguaggio di programmazione usato come modello per creare oggetti, modello comprende attributi e metodi che saranno condivisi da tutti gli oggetti creati (istanze) a partire dalla classe. Un oggetto è, di fatto, l'istanza di una classe. (it) オブジェクト指向プログラミングにおけるクラス(英: class)は、オブジェクトを生成するための設計図あるいはひな形に相当するものである。抽象データ型の一つ。クラスから生成したオブジェクトの実体のことをインスタンスという。 クラスには、クラス自身またはクラスのインスタンスが保持するデータと、データに関連したオブジェクトの振る舞いを記述できる。プログラミング言語によっては、それぞれにを指定できる。統一モデリング言語 (UML) のクラス図では、データのことを「属性」、振る舞いのことを「操作」と呼ぶ。Javaなどでは、データのことを「フィールド」、振る舞いのことを「メソッド」と呼ぶ。C++などでは、データのことを「メンバー変数」、振る舞いのことを「メンバー関数」と呼ぶ。 クラスは、クラスベースのオブジェクト指向プログラミングの基本である。また、オブジェクト指向プログラミングにおけるカプセル化・継承・ポリモーフィズムなどを、クラスベースのオブジェクト指向プログラミングにおいてはクラスを必要に応じて適宜使って実装する。一方、カプセル化・継承・ポリモーフィズムなどを、プロトタイプベースのオブジェクト指向プログラミングにおいてはクラスを使わずに実装する。 (ja) Em programação e na orientação a objetos, uma classe é um Tipo abstrato de Dados (TAD); ou seja, uma descrição que abstrai um conjunto de objetos com características similares (um projeto do objeto), é um código da linguagem de programação orientada a objetos que define e implementa um novo tipo de objeto, que terão características (atributos) que guardaram valores e, também funções específicas para manipular estes. Formalmente, é um conceito que encapsula abstrações de dados e procedimentos que descrevem o conteúdo e o comportamento de entidades do mundo real, representadas por objetos. De outra forma, uma classe pode ser definida como uma descrição das propriedades ou estados possíveis de um conjunto de objetos, bem como os comportamentos ou ações aplicáveis a estes mesmos objetos. (pt) Klasa – częściowa lub całkowita definicja dla obiektów. Definicja obejmuje dopuszczalny stan obiektów oraz ich zachowania. Obiekt, który został stworzony na podstawie danej klasy nazywany jest jej instancją. Klasy mogą być typami języka programowania – przykładowo, instancja klasy Owoc będzie mieć typ Owoc. Klasy posiadają zarówno interfejs, jak i strukturę. Interfejs opisuje, jak komunikować się z jej instancjami za pośrednictwem metod, zaś struktura definiuje sposób mapowania stanu obiektu na elementarne atrybuty. (pl) Класс — в объектно-ориентированном программировании, модель для создания объектов определённого типа, описывающая их структуру (набор полей и их начальное состояние) и определяющая алгоритмы (функции или методы) для работы с этими объектами. Класс является одним из ключевых понятий в ООП, но существуют и бесклассовые объектно-ориентированные языки, например, Self, JavaScript, Lua, (подробнее смотрите Прототипное программирование). Везде далее слова «класс», «объект», «интерфейс» и «структура» будут употребляться в своих специальных значениях, заданных в рамках ООП. (ru) |
rdfs:label | Class (computer programming) (en) صنف (حوسبة) (ar) Classe (informàtica) (ca) Třída (programování) (cs) Klasse (Objektorientierung) (de) Klaso (objektema programado) (eo) Clase (informática) (es) Classe (informatique) (fr) Kelas (ilmu komputer) (in) Classe (informatica) (it) 클래스 (컴퓨터 프로그래밍) (ko) クラス (コンピュータ) (ja) Klasse (informatica) (nl) Klasa (programowanie obiektowe) (pl) Classe (programação) (pt) Класс (программирование) (ru) Klass (programmering) (sv) 类 (计算机科学) (zh) Клас (програмування) (uk) |
owl:sameAs | dbpedia-sv:Class (computer programming) freebase:Class (computer programming) yago-res:Class (computer programming) wikidata:Class (computer programming) dbpedia-af:Class (computer programming) dbpedia-ar:Class (computer programming) dbpedia-be:Class (computer programming) dbpedia-bg:Class (computer programming) http://bs.dbpedia.org/resource/Klasa_(programiranje) dbpedia-ca:Class (computer programming) dbpedia-cs:Class (computer programming) dbpedia-da:Class (computer programming) dbpedia-de:Class (computer programming) dbpedia-eo:Class (computer programming) dbpedia-es:Class (computer programming) dbpedia-et:Class (computer programming) dbpedia-fa:Class (computer programming) dbpedia-fi:Class (computer programming) dbpedia-fr:Class (computer programming) dbpedia-gl:Class (computer programming) dbpedia-he:Class (computer programming) http://hi.dbpedia.org/resource/क्लास dbpedia-hr:Class (computer programming) http://hy.dbpedia.org/resource/Դաս_(ծրագրավորում) dbpedia-id:Class (computer programming) dbpedia-io:Class (computer programming) dbpedia-is:Class (computer programming) dbpedia-it:Class (computer programming) dbpedia-ja:Class (computer programming) dbpedia-kk:Class (computer programming) dbpedia-ko:Class (computer programming) http://lt.dbpedia.org/resource/Klasė_(programavimas) http://my.dbpedia.org/resource/Class(ကွန်ပျူတာ) dbpedia-nl:Class (computer programming) dbpedia-pl:Class (computer programming) dbpedia-pt:Class (computer programming) dbpedia-ro:Class (computer programming) dbpedia-ru:Class (computer programming) dbpedia-sh:Class (computer programming) dbpedia-simple:Class (computer programming) dbpedia-sk:Class (computer programming) dbpedia-sr:Class (computer programming) http://su.dbpedia.org/resource/Class_(élmu_komputer) http://ta.dbpedia.org/resource/வகுப்பு_(கணினியியல்) dbpedia-th:Class (computer programming) dbpedia-tr:Class (computer programming) dbpedia-uk:Class (computer programming) dbpedia-vi:Class (computer programming) dbpedia-zh:Class (computer programming) https://global.dbpedia.org/id/49d6y |
prov:wasDerivedFrom | wikipedia-en:Class_(computer_programming)?oldid=1120051831&ns=0 |
foaf:depiction | wiki-commons:Special:FilePath/Oop-uml-class-example.png |
foaf:isPrimaryTopicOf | wikipedia-en:Class_(computer_programming) |
is dbo:wikiPageDisambiguates of | dbr:Class |
is dbo:wikiPageRedirects of | dbr:Open_class_(computer_programming) dbr:Class_properties dbr:Class_property dbr:Class_attributes_(computer_programming) dbr:Abstract_base_class dbr:Concrete_class dbr:Partial_Class dbr:Member_accessibility dbr:Class_(computer_science) dbr:Protected_(class) dbr:Protected_(computer_programming) dbr:Protected_member dbr:Class_(computing) dbr:Class_(object-oriented_programming) dbr:Class_(programming) dbr:Class_(software) dbr:Class_definition dbr:Class_in_object-oriented_programming dbr:Class_programming dbr:Class_type dbr:Classes_(computer_science) dbr:Abstract_superclass dbr:Concrete_instance dbr:Partial_Classes dbr:Partial_class dbr:Partial_classes dbr:Partial_type dbr:Private_member dbr:Private_method dbr:Private_variable dbr:Private_variables_and_methods dbr:Public_member dbr:Software_classes dbr:Sealed_class dbr:Sealed_classes dbr:Anonymous_class dbr:Member_visibility |
is dbo:wikiPageWikiLink of | dbr:Capella_(notation_program) dbr:PowerShell dbr:ProGuard dbr:Scala_(programming_language) dbr:Encapsulation_(computer_programming) dbr:Member_variable dbr:Method_(computer_programming) dbr:Monitor_(synchronization) dbr:NOP_(code) dbr:Meta-object_System dbr:Primitive_wrapper_class_in_Java dbr:BioJava dbr:Boolean_data_type dbr:Design_by_contract dbr:AppKit dbr:Architecture_of_Windows_NT dbr:Per_Brinch_Hansen dbr:Perl dbr:Rhino_(JavaScript_engine) dbr:Cycle_(graph_theory) dbr:Umple dbr:Value_object dbr:Vanguard_(microkernel) dbr:Visual_Paradigm dbr:Declaration_(computer_programming) dbr:Dependency_injection dbr:Dope_vector dbr:ERuby dbr:EasyLanguage dbr:Include_guard dbr:Inner_class dbr:List_of_programming_languages_by_type dbr:OOCSS dbr:WatchKit dbr:Comparison_of_C_Sharp_and_Java dbr:Comparison_of_programming_paradigms dbr:Mass-assignment_protection dbr:Rust_(programming_language) dbr:SMPTE_2071 dbr:Geographic_information_system_software dbr:Object-oriented_programming dbr:Open_class_(computer_programming) dbr:Object_graph dbr:Node_graph_architecture dbr:Pytest dbr:Claire_(programming_language) dbr:Clarion_(programming_language) dbr:Function_(computer_programming) dbr:Game_Oriented_Assembly_Lisp dbr:Glossary_of_computer_science dbr:Google_Guice dbr:Mozilla dbr:Mustache_(template_system) dbr:Contextualization_(computer_science) dbr:Convention_over_configuration dbr:Creational_pattern dbr:Object_diagram dbr:AngelScript dbr:LibSBML dbr:Lua_(programming_language) dbr:Silk_Test dbr:Simula dbr:Closure_(computer_programming) dbr:Common_Lisp_Object_System dbr:Component-oriented_database dbr:Computer_program dbr:Delegation_pattern dbr:Friend_class dbr:Spaghetti_code dbr:Static_(keyword) dbr:1967_in_science dbr:C++ dbr:CLU_(programming_language) dbr:COBOL dbr:COVIDSafe dbr:Agner_Fog dbr:Torch_(machine_learning) dbr:Tree_(data_structure) dbr:Turtles_all_the_way_down dbr:TypeScript dbr:Data_(computer_science) dbr:WebKit dbr:Web_Ontology_Language dbr:Windows_Runtime dbr:Garbage_collection_(computer_science) dbr:Class dbr:Class_properties dbr:Class_property dbr:Language_construct dbr:Lazarus_Component_Library dbr:Liskov_substitution_principle dbr:Agile_Automation dbr:Alan_Kay dbr:Dylan_(programming_language) dbr:ECMAScript dbr:Flask_(web_framework) dbr:PL/I dbr:Framework_Class_Library dbr:Class_attributes_(computer_programming) dbr:Object_composition dbr:Protocol_(object-oriented_programming) dbr:Purely_functional_data_structure dbr:Responsibility-driven_design dbr:Hibernate_(framework) dbr:High_Level_Assembly dbr:Is-a dbr:Java_(programming_language) dbr:Simple_Features dbr:Static_application_security_testing dbr:Assembly_language dbr:ABC_Software_Metric dbr:Abstract_base_class dbr:Abstract_type dbr:Abstraction_(computer_science) dbr:Laravel dbr:Swift_(programming_language) dbr:Cohesion_(computer_science) dbr:Hidden_algebra dbr:Hierarchy_(mathematics) dbr:High-level_assembler dbr:Java_annotation dbr:Java_view_technologies_and_frameworks dbr:Java_virtual_machine dbr:Thunk dbr:Mixin dbr:Assignment_(computer_science) dbr:Autoload dbr:Business_domain dbr:C++_classes dbr:Software_construction dbr:Class-based_programming dbr:Class_hierarchy dbr:Class_implementation_file dbr:Class_variable dbr:Free_Component_Library dbr:Free_Pascal_Runtime_Library dbr:Inheritance_(object-oriented_programming) dbr:Instance_(computer_science) dbr:Instance_variable dbr:Kotlin_(programming_language) dbr:Mesquite_(software) dbr:Microformat dbr:Microsoft_Foundation_Class_Library dbr:NetworkX dbr:Newspeak_(programming_language) dbr:Oberon-2 dbr:Object_Pascal dbr:Object_REXX dbr:Ontology_(information_science) dbr:OpenStep dbr:Oracle_Corporation dbr:RDoc dbr:R_(programming_language) dbr:Racket_(programming_language) dbr:Loose_coupling dbr:Multiple_inheritance dbr:Real-Time_Object-Oriented_Modeling dbr:Rule_of_three_(C++_programming) dbr:Type_safety dbr:Scope_(computer_science) dbr:Sigil_(computer_programming) dbr:Singleton_pattern dbr:Skeleton_(computer_programming) dbr:Virtual_method_table dbr:Visitor_pattern dbr:Zooming_user_interface dbr:Factory_(object-oriented_programming) dbr:Factory_method_pattern dbr:Concrete_class dbr:Imperative_programming dbr:Semantic_Web dbr:Object_model_reference dbr:Run-time_type_information dbr:Event-driven_architecture dbr:Executable_UML dbr:First-class_citizen dbr:NPAPI dbr:Z++ dbr:PhyCV dbr:Polymorphic_recursion dbr:The_Art_of_the_Metaobject_Protocol dbr:Partial_Class dbr:Struct_(C_programming_language) dbr:Uniform_Function_Call_Syntax dbr:Member_accessibility dbr:SOLID dbr:SQL:1999 dbr:TypeParameter dbr:Class_(computer_science) dbr:Protected_(class) dbr:Protected_(computer_programming) dbr:Protected_member dbr:Class_(computing) dbr:Class_(object-oriented_programming) dbr:Class_(programming) dbr:Class_(software) dbr:Class_definition dbr:Class_in_object-oriented_programming dbr:Class_programming dbr:Class_type dbr:Classes_(computer_science) dbr:Abstract_superclass dbr:Concrete_instance dbr:Partial_Classes dbr:Partial_class dbr:Partial_classes dbr:Partial_type dbr:Private_member dbr:Private_method dbr:Private_variable dbr:Private_variables_and_methods dbr:Public_member dbr:Software_classes dbr:Sealed_class dbr:Sealed_classes dbr:Anonymous_class dbr:Member_visibility |
is owl:differentFrom of | dbr:Type_class |
is foaf:primaryTopic of | wikipedia-en:Class_(computer_programming) |