package reuse;class Shape {Shape(int i) {System.out.println("Shape constructor");}void dispose() {System.out.println("Shape dispose");}}class Circle extends Shape {Circle(int i) {super(i);System.out.println("Drawing Circle");}@Overridevoid dispose() {System.out.println("Erasing Circle");super.dispose();}}class Triangle extends Shape {Triangle(int i) {super(i);System.out.println("Drawing Triangle");}@Overridevoid dispose() {System.out.println("Erasing Triangle");super.dispose();}}class Line extends Shape {private int start, end;Line(int start, int end) {super(start);this.start = start;this.end = end;System.out.println("Drawing Line: " + start + ", " + end);}@Overridevoid dispose() {System.out.println("Erasing Line: " + start + ", " + end);super.dispose();}}/*** @Author ZhangGJ* @Date 2020年04月29日 22:24*/public class CADSystem extends Shape {private Circle c;private Triangle t;private Line[] lines = new Line[3];public CADSystem(int i) {super(i + 1);for (int j = 0; j < lines.length; j++) {lines[j] = new Line(j, j * j);}c = new Circle(1);t = new Triangle(1);System.out.println("Combined constructor");}@Overridepublic void dispose() {System.out.println("CADSystem.dispose()");// The order of cleanup is the reverse// of the order of initialization:t.dispose();c.dispose();for (int i = lines.length - 1; i >= 0; i--) {lines[i].dispose();}super.dispose();}public static void main(String[] args) {CADSystem x = new CADSystem(47);try {// Code and exception handling...} finally {x.dispose();}}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。