Каркас консольного Java приложения

К лабораторной работе 1 по ООП

Часть 1. Классы и наследование в языке С#

Каркас консольного С# приложения

using System;

 

namespace csLab1_k2_1

{

/// <summary>

/// Summary description for Class1.

/// </summary>

class Class1

{

/// <summary>

/// The main entry point for the application.

/// </summary>

[STAThread]

static void Main(string[] args)

{

//

// TODO: Add code to start application here

//

}

}

}

 

Структура Book с открытыми данными и с функцией Main()

 

using System;

 

struct Book

{

public int pages;

public string name ;

 

static void Main()

{

Book book= new Book();

book.name= "BOOK";

book.pages= 500;

 

Console.WriteLine("book.name= " + book.name);

Console.WriteLine("book.pages= " + book.pages);

}

}

 

Класс Book с открытыми данными и с функцией Main()

using System;

 

class Book

{

public int pages;

public string name ;

 

static void Main()

{

Book book= new Book();

book.name= "BOOK";

book.pages= 500;

 

Console.WriteLine("book.name= " + book.name);

Console.WriteLine("book.pages= " + book.pages);

}

}

 

Структура или класс Book с открытыми данными и без функции Main()

using System;

 

class Book // или структура Book

{

public int pages;

public string name ;

}

 

class Class1

{

static void Main()

{

Book book= new Book();

book.name= "BOOK";

book.pages= 500;

 

Console.WriteLine("book.name= " + book.name);

Console.WriteLine("book.pages= " + book.pages);

}

}

 

 

Класс Book с закрытыми данными и открытыми функциями

using System;

 

class Book

{

private int pages;

private string name;

 

public void SetPages (int Pages) {pages= Pages;}

public int GetPages ( ) {return pages;}

public void SetName (string Name) {name= Name;}

public string GetName ( ) {return name;}

}

 

class Class1

{

static void Main()

{

Book book= new Book();

book.SetName("BOOK");

book.SetPages(500);

 

Console.WriteLine("book.name= " + book.GetName());

Console.WriteLine("book.pages= " + book.GetPages());

}

}

 

 

Наследование

 

using System;

 

class Book

{

private int pages;

private string name;

 

public void SetPages (int Pages) {pages= Pages;}

public int GetPages ( ) {return pages;}

public void SetName (string Name) {name= Name;}

public string GetName ( ) {return name;}

}

 

Class ManualBook: Book

{

bool manual;

public void SetMenual (bool Manual) {manual= Manual;}

public bool IsManual ( ) {return manual;}

}

 

 

class Class1

{

static void Main()

{

ManualBook manualBook= new ManualBook();

manualBook.SetName("BOOK");

manualBook.SetPages(500);

manualBook.SetMenual (true);

 

Console.WriteLine("book " + manualBook.GetName()+

" contains " + manualBook.GetPages()+ " pages");

 

if (manualBook.IsManual()) Console.WriteLine("book is manual\n");

else Console.WriteLine("book isn't manual\n");

}

}

 

 

Задание

 

1) Самостоятельно создать класс калькулятора Calc с интерфейсом:

 

void Init (int n) – инициализировать скрытый аккумулятор accumulator

числом n,

int Get ( ) – получить значение accumulator,

void Add (int n) – прибавить n к значению accumulator,

void Sub (int n) – вычесть nиз значения accumulator.

 

2) Создать класс OtherCalc, порождённый из класса Calc и расширяющий его интерфейс следующей функцией

 

void Mul (int n) – умножить значение accumulator на указанное число n.

 

3) Создать класс AnotherCalc, порождённый из класса OtherCalc и расширяющий его интерфейс следующей функцией

 

void ChangeSign ( ) – изменить знак значения accumulator,

bool IsSign ( ) – получить знак значения accumulator.

 

 

Часть 2. Классы и наследование в языке Java

Каркас консольного Java приложения

package cjLab1_k2_1;

 

/**

* Summary description for Class1.

*/

public class Class1

{

public Class1()

{

//

// TODO: Add Constructor Logic here

//

}

 

/** @attribute System.STAThread() */

public static void main(String[] args)

{

//

// TODO: Add code to start application here

//

}

}

 

Класс Book с открытыми данными и с функцией Main()

package cjLab1_k2_1;

 

class Book

{

public int pages;

public Stringname ;

 

public static void main()

{

Book book= new Book();

book.name= "BOOK";

book.pages= 500;

 

System.out.println("book.name= " + book.name);

System.out.println("book.pages= " + book.pages);

}

}

 

Класс Book с открытыми данными и без функции Main()

 

package cjLab1_k2_1;

 

Class Book

{

public int pages;

public String name;

}

 

class Class1

{

public static void main()

{

Book book= new Book();

book.name= "BOOK";

book.pages= 500;

 

System.out.println("book.name= " + book.name);

System.out.println("book.pages= " + book.pages);

}

}