2021-06-20

java面向对象抽象类

1.抽象类是专门设计用来让子类继系,抽象方法必须被子类重写。
在Javn 语言中,捷用 abstract 关做字些饰一个类时,该类就是抽象类,使用abstract关键字修饰一个方法时该方法即为抽象方法。
抽象类和抽象方法的规则如下:
(1)一个抽象类中可以不定义抽象方法,但是只要类中有一个抽象方法,则该类一定是抽象类。
(2)抽象类不能被实例化,即不能被new 创建一个实例对象。
(3)如果一个子类继承一个抽象类,则子类需要通过厦照的方式来重写该抽象类中的所有拍象方法。如果子类设有完全重写抽象父类中所有的抽象方法,则子类仍是抽象的。
(4)抽象方法可以与public、protected 复合使用,但不能与 tinal、private 和 static 复合使用

//创建图形的抽象父类Shape
public abstract class Shape{
private String color;
//定义一个计算周长的抽象方法
public abstract String getType();
//定一个返回图形子类型的方法

//有参构造方法
public Shape(String color){
this.coor=color;
}
public String getColor(){
return color;
}
public void setColor(){
this.color=color;
}
}
//创建圆形类Circle,该类继承父类Shape
public class Circle extends Shape(){
private double r;
public Circle(String color,double r){
super(color);
this.r=r;
}
//重写父类计算周长的方法
public double calc(){
return 2*Math.p1*r;
}
//重写父类获取圆形类型的方法
public double getR(){
return "圆形";
}
}
注意:abstract不能修饰属性、修饰局部变量,也不能用于修饰构造器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值