• Java暑期学习第五十一天日报


    一、今日学习内容:

    今天练习第七章课后习题的内容。

    二、遇到的问题:

    三、明日计划:

    明天继续练习第七章课后习题的习题。

    今日练习的具体内容如下:

    1定义一个基类Shape,在此基础上派生出Rectangle和Circle,二者都有getArea()函数计算对象的面积。使用Rectangle类创建一个派生类Square。

    import java.util.Scanner;
     interface SquareArea{
        float a=3;
        public void getArea();
    }
    public abstract class shape  {
        protected static double Pi=3.14159;
        protected float m;
        public abstract void getArea() ;
        public static void main(String[] args) {
            System.out.println("请输入矩形的长和宽:");
            Scanner sc=new Scanner(System.in);
            float a=sc.nextFloat();
            float b=sc.nextFloat();
            Rectangle R=new Rectangle(a,b);
            R.getArea();
            System.out.println();
            System.out.println("请输入圆形的半径:");
            Scanner sc1=new Scanner(System.in);
            float r=sc.nextFloat();
            Circle C=new Circle(r);
            C.getArea();
            System.out.println();
            Square S=new Square();
            S.getArea();
        }
    
    }
    class Rectangle extends shape{
        private float n;
        Rectangle(float a,float b){
            m=a;
            n=b;
        }
        @Override
        public void getArea() {
            float s=m*n;
            System.out.println("矩形面积是:"+s);
        }    
    }
    class Circle extends shape {
        Circle(float e){
            m=e;
        }
        @Override
        public void getArea() {
            float s=(float) (Pi*m*m);
            System.out.println("圆形面积是:"+s);
        }
        
    }
    class Square implements SquareArea{
    
        @Override
        public void getArea() {
            float s=a*a;
            System.out.println("正方形面积是:"+s);
            
        }
        
    }

    测试截图:

     

      

    2.定义一个基类BaseClass,从它派生出类DerivedClass。BaseClass有成员函数fn1(),fn2(),DerivedClass也有成员函数fn1(),fn2()。在主函数中声明一个DerivedClass的对象,分别用DerivedClass的对象以及BaseClass和DerivedClass的指针来调用fn1(),fn2(),观察运行结果。

    public class BaseClass {
        public void fn1() {
            System.out.println("这是父类的fn1函数!");
        }
        public void fn2() {
            System.out.println("这是父类的fn2函数!");
        }
        public static void main(String[] args) {
            BaseClass B=new BaseClass();
            
            B.fn1();
            B.fn2();
            BaseClass D=new Derivedclass();
            
            D.fn1();
            D.fn2();
            
        }
    
    }
    class Derivedclass extends BaseClass{
        public void fn1() {
            System.out.println("这是子类的fn1函数!");
        }
        public void fn2() {
            System.out.println("这是子类的fn2函数!");
        }
    }

    测试截图:

     

  • 相关阅读:
    AJAX跨域JS访问
    dd
    学习java,搭建一个英文名著轻松阅读网站
    超载问题求解!!!
    nginx + uwsgi 部署Django项目
    一种算法问题,求指点!
    js除法余数
    button捕捉回车键
    为SQL表添加全文索引范例
    .Net刷新页面的小结
  • 原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/13562637.html
Copyright © 2020-2023  润新知