Last modified by chrisby on 2024/03/03 17:01

From version 3.3
edited by chrisby
on 2024/03/03 14:57
Change comment: There is no comment for this version
To version 1.1
edited by chrisby
on 2024/03/03 14:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,49 +1,1 @@
1 -### Data Structure Style
2 -
3 - type Square struct {
4 - length float
5 - }
6 -
7 - type Circle struct {
8 - radius float
9 - }
10 -
11 - func Circumference(g Object) float {
12 - switch type(g):
13 - case Square:
14 - return 4 * g.length
15 - case Circle:
16 - return 2 * PI * g.radius
17 - }
18 -
19 -*
20 -
21 -#### Object-Oriented Style
22 -
23 - interface GeometricObject {
24 - Circumference() float
25 - }
26 -
27 - class Square implements GeometricObject {
28 - length float
29 -
30 - constructor(length float) {
31 - this.length = length
32 - }
33 -
34 - func Circumference() float {
35 - return 4 * this.length
36 - }
37 - }
38 -
39 - class Circle implements GeometricObject {
40 - radius float
41 -
42 - constructor(radius float) {
43 - this.radius = radius
44 - }
45 -
46 - func Circumference() float {
47 - return 2 * PI * this.radius
48 - }
49 - }
1 +```