zoukankan      html  css  js  c++  java
  • 第七周实验报告(五)&周总结

    (一)抽象类的使用

    题目:设计一个类层次,定义一个抽象类--形状,其中包括有求形状的面积的抽象方法。 继承该抽象类定义三角型、矩形、圆。 分别创建一个三角形、矩形、圆存对象,将各类图形的面积输出。
    注:三角形面积s=sqrt(p*(p-a)*(p-b)*(p-c)) 其中,a,b,c为三条边,p=(a+b+c)/2

      抽象类-形状

     1 package com.itcast.atd.demo06;
     2 
     3 public abstract class Shape {
     4     private String triangle;
     5     private String rectangle;
     6     private String circle;
     7 
     8     public abstract void shape();
     9 
    10 }

      三角形

     1 package com.itcast.atd.demo06;
     2 
     3 public class A extends Shape{//A代表三角形
     4     private int a,b,c,p;
     5 
     6     public A(int a, int b, int c, int p) {
     7         this.a = a;
     8         this.b = b;
     9         this.c = c;
    10         this.p = p;
    11     }
    12 
    13     public int getA() {
    14         return a;
    15     }
    16 
    17     public void setA(int a) {
    18         this.a = a;
    19     }
    20 
    21     public int getB() {
    22         return b;
    23     }
    24 
    25     public void setB(int b) {
    26         this.b = b;
    27     }
    28 
    29     public int getC() {
    30         return c;
    31     }
    32 
    33     public void setC(int c) {
    34         this.c = c;
    35     }
    36 
    37     public int getP() {
    38         return (a+b+c)/2;
    39     }
    40 
    41     public void setP(int p) {
    42         this.p = p;
    43     }
    44 
    45     public void shape(){
    46         double s=Math.sqrt(p*(p-a)*(p-b)*(p-c));
    47         System.out.println(s);
    48     }
    49 }

      矩形

    package com.itcast.atd.demo06;
    
    public class B extends Shape {//B代表矩形
        private int a,b;
    
        public B(int a, int b) {
            this.a = a;
            this.b = b;
        }
    
        public int getA() {
            return a;
        }
    
        public void setA(int a) {
            this.a = a;
        }
    
        public int getB() {
            return b;
        }
    
        public void setB(int b) {
            this.b = b;
        }
    
        public void shape(){
            double s=a*b;
            System.out.println(s);
        }
    }

      圆形

    package com.itcast.atd.demo06;
    
    public class C extends Shape {//C代表圆形
        private double r;
    
        public C(double r) {
            this.r = r;
        }
    
        public double getR() {
            return r;
        }
    
        public void setR(double r) {
            this.r = r;
        }
    
        public void shape(){
            double s=3.14*Math.pow(r,2);
            System.out.println(s);
        }
    }

      测试

    package com.itcast.atd.demo06;
    
    public class test {
        public static void main(String[] args) {
            Shape shape=new A(2,2,2,3);
            Shape shape1=new B(2,3);
            Shape shape2=new C(2);
    
            shape.shape();
            shape1.shape();
            shape2.shape();
        }
    }

    运行结果截图

    (二)实现接口技术

    题目:定义接口Shape,其中包括一个方法size(),设计“直线”、“圆”、类实现Shape接口。分别创建一个“直线”、“圆”对象,将各类图形的大小输出。

      接口-形状

    package com.itcast.atd.demo07;
    
    interface Shape{
        
        public abstract void size();
    }

      直线

    package com.itcast.atd.demo07;
    
    public class A implements Shape{//A代表直线
        private int a=2;
    
        @Override
        public void size() {
            System.out.println(a);
        }
    }

      圆形

    package com.itcast.atd.demo07;
    
    public class B implements Shape {//B代表圆形
        private int r=2;
    
        @Override
        public void size() {
            System.out.println(2*3.14*r);
        }
    }

      测试

    package com.itcast.atd.demo07;
    
    public class test {
        public static void main(String[] args) {
            A a=new A();
            B b=new B();
    
            a.size();
            b.size();
        }
    }

    运行结果截图

  • 相关阅读:
    团队建设简介【转载朋友Astar】
    《简约至上 交互式设计四策略》读书总结笔记
    自我管理-性格修行
    产品经理必知的10个网页设计术语,看后瞬间高大上!
    产品经理的知识/能力结构框架(知识管理)
    javascript代码复用模式
    javascript设计模式-观察者模式
    javascript设计模式-享元模式
    javascript设计模式-装饰模式
    javascript设计模式-适配器模式
  • 原文地址:https://www.cnblogs.com/changanshisanzhao/p/11648102.html
Copyright © 2011-2022 走看看