fork download
  1. class circle {
  2. dynamic r;
  3. }
  4.  
  5. class rectangle {
  6. dynamic len;
  7. }
  8.  
  9. dynamic area(dynamic shape) {
  10. if (shape is circle) {
  11. return shape.r * shape.r * 3.14;
  12. } else {
  13. return shape.len * shape.len;
  14. }
  15. }
  16.  
  17. void main() {
  18. var shape = circle()..r = 3;
  19. print(area(shape));
  20.  
  21. var shape1 = rectangle()..len = 3;
  22. print(area(shape1));
  23. }
Success #stdin #stdout 1.27s 133252KB
stdin
Standard input is empty
stdout
28.26
9