当前位置: 首页 > wzjs >正文

做代购网站有哪些网站优化推广招聘

做代购网站有哪些,网站优化推广招聘,商务网站建设哪家好,建设部网站社保联网🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 JavaSE核心知识点02面向对象编程02-03&#…

🤟致敬读者

  • 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉

📘博主相关

  • 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息

文章目录

    • JavaSE核心知识点02面向对象编程02-03(抽象类与接口)
    • 一、抽象类(Abstract Class)
      • **1. 什么是抽象类?**
      • **2. 抽象方法**
      • **3. 继承抽象类**
      • **4. 使用场景**
    • 二、接口(Interface)
      • **1. 什么是接口?**
      • **2. 定义接口**
      • **3. 实现接口**
      • **4. 多实现**
      • **5. 使用场景**
    • 三、抽象类 vs 接口:核心区别
    • 四、如何选择抽象类 vs 接口?
      • **1. 用抽象类的情况**
      • **2. 用接口的情况**
    • 五、实际案例
      • **场景**:设计一个游戏中的角色系统
    • 六、常见误区
    • 七、总结


📃文章前言

  • 🔷文章均为学习工作中整理的笔记。
  • 🔶如有错误请指正,共同学习进步。

JavaSE核心知识点02面向对象编程02-03(抽象类与接口)

好的!作为Java面向对象编程的两个核心概念,抽象类接口是代码设计中非常重要的工具。下面我会从基础概念到实际应用,用简单易懂的方式为你详细讲解它们的区别和使用场景。


一、抽象类(Abstract Class)

1. 什么是抽象类?

  • 定义:用 abstract 关键字修饰的类,不能被实例化(不能直接 new)。
  • 核心作用:为子类提供公共模板,强制子类实现某些方法。
  • 特点
    • 可以包含普通方法(有方法体)和抽象方法(无方法体)。
    • 可以有成员变量构造方法静态方法等。
    • 单继承:一个类只能继承一个抽象类。

2. 抽象方法

  • 定义:用 abstract 修饰的方法,没有方法体,必须由子类实现。
    public abstract class Animal {// 抽象方法:没有方法体public abstract void eat();// 普通方法public void sleep() {System.out.println("动物在睡觉");}
    }
    

3. 继承抽象类

  • 子类必须实现所有抽象方法,否则子类也必须声明为 abstract
    public class Cat extends Animal {@Overridepublic void eat() {System.out.println("猫吃鱼");}
    }
    

4. 使用场景

  • 代码复用:多个子类有共同的代码逻辑(如 sleep() 方法)。
  • 强制规范:要求子类必须实现某些功能(如 eat() 方法)。

二、接口(Interface)

1. 什么是接口?

  • 定义:用 interface 关键字定义,表示一组行为规范
  • 核心作用:定义类能做什么(能力),而不是是什么(类型)。
  • 特点
    • 默认方法:Java 8+ 允许接口包含 default 方法(有方法体)。
    • 静态方法:Java 8+ 允许接口包含 static 方法。
    • 多实现:一个类可以实现多个接口。
    • 没有构造方法,不能实例化。
    • 成员变量默认是 public static final(常量)。

2. 定义接口

public interface Flyable {// 抽象方法(默认是 public abstract)void fly();// Java 8+ 默认方法default void land() {System.out.println("正在着陆");}// Java 8+ 静态方法static void checkAltitude() {System.out.println("检查飞行高度");}
}

3. 实现接口

  • 使用 implements 关键字,必须实现所有抽象方法。
    public class Bird implements Flyable {@Overridepublic void fly() {System.out.println("鸟在飞");}
    }
    

4. 多实现

  • 一个类可以实现多个接口,解决Java单继承的局限性。
    public class SuperDrone implements Flyable, Chargeable {// 实现所有接口的抽象方法
    }
    

5. 使用场景

  • 定义行为:比如 Flyable(可飞)、Swimmable(可游泳)。
  • 解耦代码:通过接口隔离不同模块的依赖。
  • 多态性:通过接口类型引用对象,提高灵活性。

三、抽象类 vs 接口:核心区别

特性抽象类接口
继承/实现单继承(extends)多实现(implements)
方法可以有抽象方法和具体方法Java 8前只有抽象方法,现在可以有默认方法和静态方法
成员变量可以是普通变量默认是 public static final(常量)
构造方法有构造方法无构造方法
设计目的表示“是什么”(is-a关系)表示“能做什么”(has-a能力)
使用场景代码复用 + 部分规范完全规范 + 行为扩展

四、如何选择抽象类 vs 接口?

1. 用抽象类的情况

  • 多个子类有共同的属性和方法需要复用。
  • 需要定义非 public 的成员非静态方法
  • 需要定义构造方法初始化状态。

2. 用接口的情况

  • 需要定义一组行为规范(如不同设备的功能)。
  • 需要实现多继承(一个类实现多个接口)。
  • 希望解耦代码,提高扩展性。

五、实际案例

场景:设计一个游戏中的角色系统

  • 抽象类Character(角色),定义公共属性(如生命值、位置)和方法(如移动)。
  • 接口Attackable(可攻击)、Defendable(可防御),定义不同角色的能力。
// 抽象类:角色基类
public abstract class Character {protected int health;protected int x, y;public Character(int health) {this.health = health;}public abstract void move();  // 抽象方法:移动方式由子类实现public void takeDamage(int damage) {health -= damage;}
}// 接口:可攻击
public interface Attackable {void attack(Character target);
}// 接口:可防御
public interface Defendable {void defend();
}// 具体类:战士
public class Warrior extends Character implements Attackable, Defendable {public Warrior() {super(100);}@Overridepublic void move() {System.out.println("战士步行移动");}@Overridepublic void attack(Character target) {System.out.println("战士用剑攻击");target.takeDamage(20);}@Overridepublic void defend() {System.out.println("战士举盾防御");}
}

六、常见误区

  1. 滥用继承:如果不需要复用代码,优先用接口。
  2. 过度设计:不要为了用抽象类而用,根据需求选择。
  3. 忽略默认方法:Java 8+ 的接口可以通过 default 方法提供默认实现,减少代码重复。

七、总结

  • 抽象类是什么(is-a),适合代码复用 + 部分规范。
  • 接口能做什么(has-a),适合定义行为 + 多态扩展。

掌握两者的区别和适用场景,能帮助你写出更灵活、可维护的代码!如果还有疑问,可以尝试写几个小例子练习一下~ 😊


📜文末寄语

  • 🟠关注我,获取更多内容。
  • 🟡技术动态、实战教程、问题解决方案等内容持续更新中。
  • 🟢《全栈知识库》技术交流和分享社区,集结全栈各领域开发者,期待你的加入。
  • 🔵​加入开发者的《专属社群》,分享交流,技术之路不再孤独,一起变强。
  • 🟣点击下方名片获取更多内容🍭🍭🍭👇

http://www.dtcms.com/wzjs/410646.html

相关文章:

  • 时时彩网站代理怎么做爱链网买链接
  • 网站设计 cdc宁德市是哪个省
  • 重庆时时彩在线网站制作微信投放广告多少钱
  • 做鞋子网站的域名对网络营销的认识
  • 网站建设公司 网络服务大数据精准营销系统
  • 公共网站怎地做seo排名赚app官网
  • 一个旅游网站建设岳阳seo公司
  • 快手推广网站可以发广告的100个网站
  • 浙江省旅游企业网站建设情况谷歌seo关键词优化
  • 黄页游戏引流推广网站百度的网址是多少
  • 福步外贸论坛官网注册网站打开速度优化
  • wordpress无法显示文章杭州seo全网营销
  • 成都有没有做网站建设的免费发帖论坛大全
  • wordpress的vieu4主题破解版赣州seo外包怎么收费
  • 怎么在中国移动做网站备案网络推广方法技巧
  • 做网站开发的流程重庆森林经典台词独白
  • 护卫神做的网站访问阳江seo
  • 山东省和住房建设厅网站首页百度推广业务电话
  • 平面设计免费网站百度电话客服24小时
  • 会计题库网站怎么做谷歌浏览器手机版
  • 宁波免费做网站世界杯最新排名
  • 传媒公司做网站编辑 如何seo关键词推广案例
  • 推广普通话宣传标语专业搜索引擎seo服务商
  • 武汉网站建设网络营销一站式自媒体服务平台
  • 企业网站建站流程郑州厉害的seo顾问公司
  • 建设房地产法律网站郴州网站定制
  • 网站制作有哪些创新免费推广引流软件
  • ps做网站分辨率自适应吉安seo网站快速排名
  • 庆阳北京网站建设百度一下就知道首页
  • 做教育类seo网站靠谱吗百度优化是什么