Java面向对象之抽象类

水深无声 2023-10-18 22:07 269阅读 0赞

我的网站:欢迎大家访问

抽象类概念

当多个子类需要指向同一个父类并每个子类实现的功能不同时,父类便可定义为抽象类

aHR0cHM6Ly9zMi5heDF4LmNvbS8yMDE5LzA3LzIwL2VTUENRTy5wbmc

抽象类

1.用abstract修饰,就算抽象类
2.里面和普通类一样,不过它还可以拥有抽象方法
3.不能够创建对象
4.一般用来当作模板

抽象方法

1.一个方法被abstract修饰就是抽象方法
2.特点没有方法体
3.不是抽象类,必须覆写抽象方法

Demo

  1. public class AbstractDemo {
  2. public static void main(String[] args){
  3. //new Test();
  4. Test test = new Circle(7.382); //实例化对象传入圆的半径
  5. double length = test.getLength(); //调用计算的方法
  6. System.out.println(length); //输出结果
  7. }
  8. }
  9. abstract class Test{
  10. //新建抽象类Test,存放图形的模板
  11. int age;
  12. void eat(){
  13. }
  14. Test(){
  15. }
  16. abstract double getLength(); //定义抽象方法
  17. }
  18. class Circle extends Test{
  19. //继承抽象类
  20. double r;
  21. Circle(double r){
  22. this.r = r;
  23. }
  24. @Override
  25. double getLength(){
  26. //对抽象方法进行覆写
  27. System.out.println("圆周率为:"+Math.PI); //Math.P求出圆周率
  28. return 2*Math.PI*r; //计算圆的周长
  29. }
  30. }
  31. class Rectangle extends Test{
  32. //继承抽象类
  33. double width;
  34. double height;
  35. Rectangle(double width,double height){
  36. //定义构造方法并接收长度和宽度
  37. this.width = width;
  38. this.height = height;
  39. }
  40. double getLength(){
  41. //对抽象方法进行覆写
  42. return 2*(width+height); //计算长方形的周长
  43. }
  44. }

发表评论

表情:
评论列表 (有 0 条评论,269人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java -- 面向对象抽象

    今天我们来说一下抽象类,这算是开始步入Java高级阶段的门了,由浅入深,慢慢的接触Java的核心技术,今天乃至于以后的学习都是以前面的基础作为铺垫的,也可以说是 ---- “啃

    相关 面向对象抽象

    抽象类 1. abstract 修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,那么该类就是抽象类 2. 抽象类中可以没有抽象方

    相关 PHP面向对象抽象

    在oop语言中,一个类可以有一个或多个子类,而每个类都有一个公有方法做为外部代码访问其的接口。而抽象方法就是为了方便继承而引入的。 掌握2个为什么? 什么是抽象方法?

    相关 Java面向对象-抽象

    定义:在java中,含有抽象方法的类称为抽象类,同样不能生成对象; 注意点: 1,包含一个抽象方法的类是抽象类; 2,抽象类和抽象方法都要用abstract关键字修饰;