Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КП все ответы.doc
Скачиваний:
4
Добавлен:
28.10.2018
Размер:
312.83 Кб
Скачать

56. Яп с#. Символы и строки. Класс Random.

В С# сущ-т спец тип string, обеспеч-й работу со строками. Каждый об-т дан-го типа(класса) предст-т собой послед-ть символов Uni код. Фактич тип string явл-ся для платформы net классом System String.

Для переем-х(объек-ов) типа string можно вызвать различные методы и поля основ-е.

Length()-кол-во символов в дан-м экземпляре.

Copy()- статич метод, соз-ий нов строку, путем копирования сущ-их.

Concat()- статич метод, создающ-й ов строку из неск строк.

Substring()- извлекает фрагмент строки.

Remuve()- удоляет указ-е кол-во символов.

Empty- статич поле предостов-ее пустую строку. И т.д.

Пр: string S1=”abcd”;

strings S2=”ABCD”;

int MyInteger=5;

string integer String-myInteger.ToSring();

string S3=string.Coy(S1);

int result;

result=string.Compare(S1,S2,true);//сравнение строк с игнорированием реестра.

Примечание: Как в яз. С строк-е const пишутся в “ ”, а символьные в ‘ ’.

Класс Random.

Для .Net платформы разработан класс random для раб со случ числами.

Пр: …..

Const int init RND=77;

Random realRND = new Random(); //[0,1)

Random realRND = new Random(init Rnd); //[0,Pnd)

For(int i-1;i<=5,i++){

WriteLine(“{0}”,realRnd.NextDouble());}

for (int i=1;i<5,i++){

WriteLine(“{0}”,realRnd.Next (min,max));

} repeat Rnd.Next();//[0,77)

58. Яп с#. Вложенные, изолированные классы и класс Object.

Изолированные кл.

В противоположность абстрактным сущ изолиров-е кл, в то время, как абстр кл спец пред-н для созд произв кл-в, то изолиров вообще не может использ в качестве базового. Для описания изолир кл в объявлении классов необходимо указать вместо ключ слова abstract ключ слово sealed.

Class object.

В С# счит, что все кл-сы не зависимо от их типа в конечном счете произведены от кл-са Sistem.Object. Класс Object обладает рядом методов, кот. М.б. переопределены в произв-м кл-се.

Equals()– проверяет эквивалентны ли 2 объекта.

GetType()- позвол-т об-там предост-ть собств-е хеш-функции для использ кл-са колекциию

ToString()- предост-т стру-е пред-е об-та.

Finalize()- освобождает ресурсы не связ-е с паметью, выз дистр.

MemberwizeClone()- созд-т копию об-та(не след-т реализ-ть в совоем типе).

ReferenceEquals()- провер-т ссылаются ли 2 об-та на 1 и т.ж. экземпляр.

Вложенные кл.

Членом кл м.б. тип опред-м польз-м.

Пр: public class Fraction{

public Fraction(int rum, int den){…..}

internal class Fraction Artist{

public void Draw Fraction (f){

Console.WriteLine(“Chisl:{0}”,f.num);

Console.WriteLine(“Znam:{0}”,f.den);}

Private int num;

Private int den;}

Public class Tester{

Static void Main(){

Fraction f1=new Fraction (3,4);

….

Fraction.Fraction Artist fa=new

Fraction.Fraction Artist ();

Fa Draw(f1);}

60. Яп с#. Интерфейсы.

- механизм, кот обеспе-т опред. Повед-е кл-са или структуры. Интерфейс как бы говорит пользователю, что “я гарантирую что поддерживаю методы, свойства, события и индексаторы этого интер-са”.

В отлич от абстр-го кл (кот реал-т отношение «явл-ся») инт-с опред-т отношение «реализует».

Напр, автомобиль явл транспортным средс-м, но он может реал-ть к-л функцию.

Interfase IStorable{void Read();

Void Write (object);}

Реализ кл Document, кот должен реализ док-т IStorable.

Public class Document.Istorable

{ public void Read(){….}

Public void Write(object obj){….}}

Примечание1. Инт-с должен содер-ть только описание методов, св-в, событий и т.д.

Примечание2. В кла-се кот релиз дан инт-с д.б. в обяз порядке еализ все методы , св-ва, события и т.д.

Примечание3. От дан интер-са istorable могут реализ и др кл, тж Program, кот должен реализ эти методы описан с инт-са Istorable.

Примечание4. Классы могут реализовываться от неск инт-сов. Напр Istorable1 и Istorable2. В эт случ дан кл реализ все методы всех инт-сов.

Примечание5. Кл мож одновременно наслед-ся от др кл и одновр реализ от1 или неск инт-ов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]