首页 > 其他分享 >jaca-面向对象三大特征

jaca-面向对象三大特征

时间:2022-09-18 22:25:41浏览次数:74  
标签:String 子类 void name 面向对象 父类 public 三大 jaca

面向对象编程的三大特征:继承、封装、多态

继承

  继承是面向对象编程的三大特征之一。继承让我们更加容易实现类的扩展。实现代码的重用,不用再重新发明轮子(don’t reinvent wheels)。

  1. 代码复用,更加容易实现类的扩展
  2. 方便建模

  继承通过extends实现
    格式:class 子类 extends 父类 { } 

继承的实现

  从英文字面意思理解,extends 的意思是“扩展”。子类是父类的扩展。

  

使用 extends 实现继承
public class Test {
    public static void main(String[] args) {
        Student s = new Student("高淇", 176, "Java");
        s.rest();
        s.study();
    }
}

class Person {
    String name;
    int height;

    public void rest() {
        System.out.println("休息一会!");
    }
}

class Student extends Person {  // Student继承person类,为其子类,会自动拥有父类的非私有方法及属性
    String major; // 专业

    public void study() {
        System.out.println("在家,自学Java");
    }

    public Student(String name, int height, String major) { // 子类有参构造,也拥有父类属性
        // 天然拥有父类的属性
        this.name = name;
        this.height = height;
        this.major = major;
    }
}

继承的好处和弊端

标签:String,子类,void,name,面向对象,父类,public,三大,jaca
From: https://www.cnblogs.com/e-link/p/16706003.html

相关文章

  • 第04周 预习:面向对象设计、继承与Object
    1,为什么说Java中的所有类都is-aObject?Object类是所有类的始祖,Java中的每一个类都扩展了Object.2,一,在JDK文档中查找Object的toString方法。说一说,该方法有什么用?-->t......
  • 面向对象---接口
    JDK1.8之前packagecom.gao.test.Test7;/*1.类是类,接口是接口,他们是同一层次的概念。2.接口中没有构造器3.接口如何声明:interface4.在JDK1.8之前,接口中只有两部分内......
  • Python面向对象+unittest框架(存档)
    面向对象基本的介绍面向对象是一个编程思想(写代码的套路)编程思想:1.面向过程2.面向对象以上两种都属于写代码的套路(方法),最终目的都是为了将代码书写出来,只不过过......
  • 面向对象编程 (OOP):您需要知道的一切
    面向对象编程(OOP):您需要知道的一切面向对象编程(OOP),编程中最有趣的话题之一,它有很多优势程序化编程。我们还将讨论OOP中的一些重要方法,它们是封装、继承、多态、抽......
  • 面向对象-什么是继承
           ......
  • 5.JS面向对象编程
    5.面向对象编程5.1原型对象JavaScript,java,c#。。。。类:模板对象:具体的实例原型: varuser={   name:"cc",   age:3,   sex:'男',   run:f......
  • 11.5面向对象的三大特性
    #面向对象三大特性:封装继承多态#广义得封装:#把方法和变量都封装在类中#比如人狗大战#规范创建对象#创建所有人得属性名都能一致#......
  • 11.6面向对象的3个装饰器
    #比如计算学生得年龄,传生日#importtime##classStudent:##def__init__(self,name,birth):#self.birth=birth#self.name=name##@pro......
  • 10.1纯函数面向对象编程
    #人狗大战#人-角色#名称等级血量攻击力性别职业#zhangsan={'name':"zhangsan",'level':1,'hp':200,'ad':40,'性别':'不详','职业':'射手'}##l......
  • 10.2面向对象
    #面向对象语法#什么是抽象?#类-抽象的角色-具体的#我们创建类的时候会给这个类创建很多抽象的属性和名字,#具体值都是创建对象(角色)过程中体现出来的#class类名:类名......