zoukankan      html  css  js  c++  java
  • 第六周&java实验报告四

    第六周总结:

    1.抽象类

    抽象类的定义格式

    abstract class抽象类名称{
        属性;
        访问权限返回值类型方法名称(参数){ //普通方法
            [return返回值];
    }
        访问权限abstract返回值类型方法名称(参数); //抽象方法
        //在抽象方法中是没有方法体的
    }
    
    

    2.对象的多态性

    向上转型(子类 → 父类)
    向下转型(父类 → 子类)
    向下转型前一定要先向上转型,并用instanceof关键字进行安全验证
    

    抽象类与接口的关系

    4.三角形的面积计算用海伦公式

    实验报告四:

    一.实验目的

    (1)掌握类的继承

    (2)变量的继承和覆盖,方法的继承,重载和覆盖的实现;

    二.实验的内容

    (1)根据下面的要求实现圆类Circle

    1.圆类Circle的成员变量:radius表示圆的半径。

    2.圆类Circle的方法成员:

           Circle():构造方法,将半径置0
    
           Circle(double r):构造方法,创建Circle对象时将半径初始化为r
    
           double getRadius():获得圆的半径值
    
           double getPerimeter():获得圆的周长
    
           void disp():将圆的半径和圆的周长,圆的面积输出到屏幕
    

    实验代码:

    public class Circle {
    	private double radius;
    
    	public Circle(double r) {
    		radius = r;
    	}
    
    	public double getRadius() {
    		return radius;
    	}
    
    	public void setRadius(double radius) {
    		this.radius = radius;
    	}
    
    	public double getPerimeter() {
    		return 2 * Math.PI * radius;
    	}
    
    	public double getArea() {
    		return Math.PI * Math.pow(radius, 2);
    	}
    
    	public static void main(String[] args) {
    		Circle c = new Circle(4);
    		System.out.println("周长:" + c.getPerimeter());
    		System.out.println("半径:" + c.getRadius());
    		System.out.println("面积:" + c.getArea());
    	}
    
    }
    

    2)继承第一题中的圆Circle类,派生圆柱体类Cylinder。要求如下:

    1.圆柱体类Cylinder的成员变量:height表示圆柱体的高。

    2.圆柱体类Cylinder的成员方法:

            Cylinder(double r,double h)构造方法,创建Cylinder对象时将圆半径初始化为r,圆柱体高初始化为h。
    
            double getHeight():获得圆柱体的高
    
            double getVol():获得圆柱体的体积
    
            void dispVol():将圆柱体的体积输出到屏幕
    

    3.按照第二题的Cylinder类,接上键盘的输入值作为圆的半径和圆柱体的高,计算圆柱体的体积

    实验代码:

    public class Cylinder extends Circle {
    
    	private double height;
    
    	public Cylinder(double h, double r) {
    		super(r);
    		this.setHeight(height);
    
    	}
    
    	public double getHeight() {
    		return height;
    	}
    
    	public void setHeight(double height) {
    		this.height = height;
    	}
    
    	public double getVol() {
    		return super.getArea() * height;
    	}
    	void dispVol() {
    		
    		System.out.println("体积:" + getVol());
    	}
    
    	public static void main(String[] args) {
    		Cylinder cy = null;
    		cy = new Cylinder(0, 0);
    		cy.setRadius(7.0);
    		cy.height = 8.0;
    		cy.dispVol();
    	}
    }
    

  • 相关阅读:
    hdu6393 Traffic Network in Numazu 树链剖分
    codeforces 1180E Serge and Dining Room 线段树
    codeforces 546E Soldier and Traveling 网络流
    E
    poj3207 Ikki's Story IV
    【2020牛客多校第二场】F Fake Maxpooling
    【2020牛客多校第一场】J Easy Integration
    【ICPC2015沈阳M】Meeting
    【 AtCoder Beginner Contest 169】C Multiplication 3
    【AtCoder Beginner Contest 169】B Multiplication 2
  • 原文地址:https://www.cnblogs.com/hhl296738954/p/11626705.html
Copyright © 2011-2022 走看看