zoukankan      html  css  js  c++  java
  • Java中的抽象类


      含有抽象方法的类,抽象方法即用abstract修饰的方法,即父类只知道其子类应该含有该方法,但无法知道子类如何实现这些方法
      抽象类限制规定子类必须实现某些方法,但不关注实现细节
      抽象类中可以包含普通方法(在Java中仍然为虚方法),也可以没有抽象方法
      抽象类无法用于实例化对象,但可以定义引用变量,以用于指定子类对象

    参考代码:

    抽象类Shape

    package com.hao.practice;
    
    public abstract class Shape {
        public abstract float perimeter();
        public abstract float area();
    }
    View Code

    子类Circle

    package com.hao.practice;
    
    public class Circle extends Shape {
    
        static final float PI = 3.14f;
        float r = 0.0f;
    
        /*
         * 默认构造函数
         */
        public Circle() {
            super();
        }
    
        /*
         * 带参构造函数
         * @param r
         */
        public Circle(float r) {
            super();
            this.r = r;
        }
    
        /*
         * (非 Javadoc)
         * @see com.hao.practice.Shape#perimeter()
         */
        @Override
        public float perimeter() {
            // TODO 自动生成的方法存根
            return 2*PI*r;
        }
    
        @Override
        public float area() {
            // TODO 自动生成的方法存根
            return PI*r*r;
        }
    
    }
    View Code

    子类Rectangle

    package com.hao.practice;
    
    public class Rectangle extends Shape {
    
        float a = 0.0f;
        float b = 0.0f;
        
        /**
         * 默认构造函数
         */
        public Rectangle() {
            super();
        }
    
        /**
         * 拷贝构造函数
         * @param a
         * @param b
         */
        public Rectangle(float a, float b) {
            super();
            this.a = a;
            this.b = b;
        }
    
        @Override
        public float perimeter() {
            // TODO 自动生成的方法存根
            return 2*a*b;
        }
    
        @Override
        public float area() {
            // TODO 自动生成的方法存根
            return a*b;
        }
    
    }
    View Code
  • 相关阅读:
    python函数执行超时处理的两种方法
    Flask常用方法函数汇总
    夜神模拟器操作
    简单auto.js自动化处理andorid手机案例
    TCP-三次握手和四次挥手简单概述
    android手机执行shell脚本
    接口测试要测试什么?怎么测?
    python unittest单元测试
    python webdriver 测试框架--数据驱动之Excel驱动
    顺时针打印矩阵
  • 原文地址:https://www.cnblogs.com/tommychok/p/5503813.html
Copyright © 2011-2022 走看看