Created
August 7, 2020 08:02
-
-
Save Medvedoc/e0580cc1de8dddcdaacc47242a18cf91 to your computer and use it in GitHub Desktop.
My_tasks_Dart_ по классам и наследованию
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Задача. | |
Определите следующие классы. | |
1) Кубоид | |
Конструктор объекта для класса Cuboid должен получить ровно три аргумента в следующем порядке: длина, ширина, высота и сохранить эти три значения в length, width и height соответственно. | |
Класс Cuboid должен иметь геттер SurfaceArea, который возвращает площадь поверхности кубоида, и геттер Volume, который возвращает объем кубоида. | |
2) Куб | |
Класс Cube является подклассом класса Cuboid. Функция конструктора Cube должна получить только один аргумент, его длину (length) и использовать это переданное значение, чтобы установить length, width и height. | |
Подсказка: используйте super, чтобы передать правильные параметры. | |
Входные данные: | |
Cuboid(1, 2, 3) | |
Cube(2) | |
Выходные данные: | |
Cuboid Volume = 6 | |
Cuboid Surface Area = 22 | |
Cube Volume = 8 | |
Cube Surface Area = 24 | |
*/ | |
void main() { | |
var myCuboid = Cuboid(1,2,3); | |
myCuboid.move(); | |
var myCube = Cube(2); | |
myCube.move2(); | |
} | |
class Cuboid { | |
int length; | |
int width; | |
int height; | |
Cuboid(this.length, this.width, this.height); | |
int get volume => length*width*height; | |
int get surfaceArea => (length*width+width*height+height*length)*2; | |
void move(){ | |
print('cuboid volume $volume'); | |
print('cuboid surfaceArea $surfaceArea'); | |
print('\n'); | |
} | |
} | |
class Cube extends Cuboid{ | |
int length; | |
Cube(this.length):super(length, length, length); | |
void move2(){ | |
print('cuboid volume $volume'); | |
print('cuboid surfaceArea $surfaceArea'); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment