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

网站后台的文章怎么做网站引导页面制作的四个任务名称

网站后台的文章怎么做,网站引导页面制作的四个任务名称,广告位,做网站很麻烦吗🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 JavaSE核心知识点02面向对象编程02-02&#…

🤟致敬读者

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

📘博主相关

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

文章目录

    • JavaSE核心知识点02面向对象编程02-02(封装、继承、多态)
    • **一、封装(Encapsulation)**
      • **1. 什么是封装?**
      • **2. 如何实现封装?**
      • **3. 代码示例**
      • **4. 封装的好处**
    • **二、继承(Inheritance)**
      • **1. 什么是继承?**
      • **2. 代码示例**
      • **3. 继承的注意事项**
    • **三、多态(Polymorphism)**
      • **1. 什么是多态?**
      • **2. 方法重写(Override)**
      • **3. 向上转型(Upcasting)**
      • **4. 多态的优势**
    • **四、总结与对比**
    • **五、常见问题**
      • **1. 方法重载(Overload) vs 方法重写(Override)**
      • **2. 什么时候用继承?**


📃文章前言

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

JavaSE核心知识点02面向对象编程02-02(封装、继承、多态)

好的!封装、继承和多态是面向对象编程(OOP)的三大核心特性,理解它们对掌握Java至关重要。我会用通俗易懂的方式为你讲解,并结合代码示例帮助你理解。


一、封装(Encapsulation)

1. 什么是封装?

  • 定义:将数据(属性)和操作数据的方法(行为)捆绑在一个类中,并对外隐藏内部实现细节。
  • 核心思想:隐藏对象的属性和实现细节,仅对外公开接口(方法)进行交互。
  • 目的:提高安全性、可维护性、灵活性(例如:避免属性被随意修改)。

2. 如何实现封装?

  • 使用访问修饰符控制属性的可见性:
    • private:属性只能在当前类内访问。
    • public:属性或方法可以被任何类访问。
    • protected:允许子类和同包类访问。
  • 提供公共的getter和setter方法操作属性。

3. 代码示例

public class Student {// 私有属性,外部无法直接访问private String name;private int age;// 公共的getter方法,允许外部获取属性值public String getName() {return name;}// 公共的setter方法,允许外部设置属性值(可添加校验逻辑)public void setName(String name) {if (name != null && !name.isEmpty()) {this.name = name;}}public int getAge() {return age;}public void setAge(int age) {if (age >= 0 && age <= 120) {  // 校验年龄合法性this.age = age;}}
}// 使用示例
public class Main {public static void main(String[] args) {Student stu = new Student();stu.setName("Alice");stu.setAge(20);System.out.println(stu.getName() + ": " + stu.getAge());}
}

4. 封装的好处

  • 安全性:防止属性被非法修改(如年龄为负数)。
  • 灵活性:可以在setter方法中添加校验逻辑,而外部调用者无需关心。
  • 代码维护:修改类的内部实现时,不影响外部代码。

二、继承(Inheritance)

1. 什么是继承?

  • 定义:子类(派生类)继承父类(基类)的属性和方法,并可以扩展自己的功能。
  • 核心思想:代码复用 + 扩展功能。
  • 语法:使用 extends 关键字。

2. 代码示例

// 父类:Animal
class Animal {private String name;public void eat() {System.out.println(name + " is eating.");}public void setName(String name) {this.name = name;}
}// 子类:Dog(继承Animal)
class Dog extends Animal {// 扩展自己的方法public void bark() {System.out.println("Woof! Woof!");}
}// 使用示例
public class Main {public static void main(String[] args) {Dog dog = new Dog();dog.setName("Buddy");dog.eat();   // 调用父类方法dog.bark();  // 调用子类方法}
}

3. 继承的注意事项

  • 单继承:Java中一个类只能直接继承一个父类(不支持多继承)。
  • 构造方法:子类构造方法默认会调用父类的无参构造方法(可通过 super() 显式调用父类构造方法)。
  • 方法重写(Override):子类可以重写父类的方法(后面多态中详细讲解)。

三、多态(Polymorphism)

1. 什么是多态?

  • 定义:同一操作作用于不同对象,可以有不同的行为(例如:同一方法在不同子类中有不同实现)。
  • 两种形式
    1. 编译时多态(静态多态):方法重载(Overload)。
    2. 运行时多态(动态多态):方法重写(Override) + 向上转型(Upcasting)。

2. 方法重写(Override)

  • 子类重新定义父类中已有的方法。
  • 规则
    • 方法名、参数列表必须与父类方法相同。
    • 返回类型可以是父类方法返回类型的子类。
    • 访问权限不能比父类方法更严格。
class Animal {public void makeSound() {System.out.println("Animal makes a sound");}
}class Dog extends Animal {@Override  // 注解:表示重写父类方法public void makeSound() {System.out.println("Dog barks: Woof!");}
}class Cat extends Animal {@Overridepublic void makeSound() {System.out.println("Cat meows: Meow~");}
}

3. 向上转型(Upcasting)

  • 将子类对象赋值给父类引用变量。
  • 目的:通过父类引用调用子类重写的方法,实现多态。
public class Main {public static void main(String[] args) {Animal animal1 = new Dog();  // 向上转型Animal animal2 = new Cat();animal1.makeSound();  // 输出 Dog barks: Woof!animal2.makeSound();  // 输出 Cat meows: Meow~}
}

4. 多态的优势

  • 代码扩展性:新增子类时无需修改原有代码。
  • 统一接口:用父类引用处理不同子类对象。

四、总结与对比

特性核心思想关键实现方式
封装隐藏细节,暴露接口private属性 + getter/setter
继承代码复用,扩展功能extends关键字 + 方法重写
多态同一方法不同表现方法重写 + 向上转型

五、常见问题

1. 方法重载(Overload) vs 方法重写(Override)

  • 重载:同一类中,方法名相同,参数列表不同。
  • 重写:子类中重新实现父类方法。

2. 什么时候用继承?

  • 符合 “is-a” 关系时(例如:Dog is a Animal)。
  • 避免过度继承(优先考虑组合而非继承)。

通过这三个特性,你可以设计出灵活、可维护的Java程序。建议结合代码实践,尝试自己编写一些类,体会它们之间的关系!


📜文末寄语

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

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

相关文章:

  • 怎样做有趣的视频网站制作微信公众的网站开发
  • 枣庄手机网站建设公司网站设计 视频
  • 做网站有哪些项目jquery网页设计成品
  • 做网站用啥语言小组用jsp做的网站论文
  • 网站策划书总结长春财经学院教务系统
  • 互联网+创新创业大赛项目计划书企业网站优化内容
  • 鞍山做网站公司百度优化软件
  • 站酷网logo陕西正天建设有限公司网站
  • 网站建设方案及报网站建设程序流程
  • 惠州网站建设制作公司网站建设飠金手指排名十五
  • 网站建设企业网的项目描述jizhicms
  • 网站seo课设网站推广一般多少钱
  • 团购网站管理系统seo工具助力集群式网站升级
  • 广州网站制作商2019做网站
  • wordpress做视频网站吗门户网站做吗
  • 公司建设网站的申请信用卡甘肃谷歌seo
  • mvc5网站开发之六东莞松山湖
  • 国外设计网站怎么登陆家用电脑可以做网站服务器
  • 网站排名效果好福建泉州做淘宝的拿货什么网站
  • 建站论坛系统免费发布信息的软件
  • 洛阳建设信息网站校园类网站模板
  • 极速网站建设哪家好网址导航大全软件下载
  • 德兴市网站建设服务公司软文推广300字
  • 卧室室内装修设计网站wordpress调用当前子分类
  • 网站建设作为wordpress增加logo
  • 台州网站建设方案服务辽宁建设厅规划设计网站
  • 深圳哪里有做网站推广的wordpress 图集插件
  • 学校 网站建设 招标贵阳网站维护培训
  • 电子商务网站安全性能主要包括搭建什么平台如何表达
  • 做旅游景区网站免费php模板网站