如何有效更新网站信息员队伍的LOGO以提升品牌形象?
摘要:网站信息员队伍建设,网站logo 更换,wordpress 无法注册,如何网络营销个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓
网站信息员队伍建设,网站logo 更换,wordpress 无法注册,如何网络营销个人主页#xff1a;兜里有颗棉花糖 欢迎 点赞#x1f44d; 收藏✨ 留言✉ 加关注#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 本专栏旨在分享学习JavaSE的一点学习心得#xff0c;欢迎大家在评论区讨论#x1f48c; 目录 一、抽象类抽象类概念… 个人主页兜里有颗棉花糖 欢迎 点赞 收藏✨ 留言✉ 加关注本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 本专栏旨在分享学习JavaSE的一点学习心得欢迎大家在评论区讨论 目录 一、抽象类抽象类概念抽象类语法抽象类作用 二、接口接口语法多接口接口间的继承 三、抽象类和接口的区别 一、抽象类
抽象类概念
抽象类我们通过前面面向对象的学习已经了解到所有的对象都是通过类来描述的但是如果反过来并不是所有的类都是用来描述对象的。如果一个类中没有足够的信息来描述一个完整的对象那么这个类我们称它为抽象类。
抽象类语法
抽象类语法
抽象类使用abstract修饰抽象类包含普通类所能包含的成员抽象类之所以和普通类有所区别是因为抽象类中包含抽象方法抽象方法同样使用abstract进行修饰抽象类无法进行实例化抽象类存在的最大意义就是为了被继承如果一个普通类继承了抽象类那么这个普通类必须对抽象类中的抽象方法进行重写如果抽象类A继承了抽象类B则抽象类A不需要重写抽象类B中的抽象方法但是如果抽象类A被普通类C继承那么普通类C需要重写抽象类B的抽象方法抽象方法是不能私有的抽象方法没有加访问限定符时默认是被public修饰的抽象方法无法被final和static修饰因为抽象方法是要被重写的抽象类必须被继承且子类必须重写抽象类的抽象方法否则这个子类必须也是一个抽象类。抽象类不一定要包含抽象方法但是有抽象方法的类一定是抽象类抽象类中可以有构造方法以便子类创建对象时可以初始化父类的成员变量不要忘记抽象类是无法实例化的之所以抽象类可以存在构造方法就是为了子类可以调用抽象类的构造方法来完成抽象类成员变量的初始化操作
这里解释下为什么抽象方法无法被static修饰当一个方法被声明为抽象方法时它要求子类必须提供具体的实现。而静态方法是属于类的一部分不涉及对象的实例化和继承因此不能被重写。如果抽象方法允许被static修饰那么就会导致无法在子类中重写或实现这个方法。
为什么抽象方法无法被final修饰final修饰的方法无法被子类重写而抽象方法又要求子类必须对齐抽象方法进行重写二者相互冲突所以抽象方法当然无法被final修饰了。
我们举一个简单的抽象类请看
abstract class Shape {private String color;public Shape(String color) {this.color color;}// 抽象方法需要子类实现public abstract double getArea();// 普通方法public String getColor() {return color;}
}抽象类作用
我们已经知道抽象类是无法进行实例化的如果想要使用抽象类必须在子类中重写抽象类的抽象方法才可以使用。
但是普通类中的方法也可以被重写啊那为什么还要整个抽象类那么麻烦呢原因是因为抽象类在在编译器角度来说相当于多了一重检查。 举个例子如果我们写了一个普通类A同时子类B继承了这个普通类A那么无论我们在子类中是否重写普通类A中的成员方法编译器都不会进行报错的。相反如果是抽象类的话如果我们没有在子类中实现抽象类的抽象方法的话编译器是会报错的。
所以充分利用编译器的校检能力对于实际开发中是十分有必要的可以让我们更早的检查到我们犯下的错误。
二、接口
在Java中接口是一种抽象类型它定义了一组方法的规范但没有提供这些方法的具体实现。接口可以看作是一种约定它规定了实现该接口的类必须实现接口中声明的所有方法。
