- 2025-01-06创建抽象基类
创建一个抽象(abstract)类,换句话说,就是不能直接实例化的类,不过可以作为子类的一个公共基类。将类标志为abstract:abstractclassDatabase{}必须至少在这个类中定义一个抽象方法。可以在方法定义前面加上abstract关键字:abstractclassDatabase{abstractpublicfunctionc
- 2025-01-06[读书日志]从零开始学习Chisel 第五篇:Scala面向对象编程——类继承(敏捷硬件开发语言Chisel与数字系统设计)
3.3类继承3.3.1Scala中的类继承为了节省代码量和反映实际各种类之间的联系,通常采取两种策略,包含和继承。包含是说明一个类中包含另一个类的对象,但两者之间没有必然联系。继承是从一个宽泛的类派生出更具体的类的过程,被继承的类称为“超类”或“父类”,而派生出来的类称为
- 2025-01-05Java必备知识点
18.子类方法与父类的方法同名,并且参数个数、类型和数据也相同,那么子类的方法覆盖了父类的方法(也就是子类的方法声明和父类的方法声明一致)19.super调用父类方法和属性20.注释的那段代码的意思:通过创建一个Husband类的对象赋值给wife对象中的husband常量(因为在Wife这个类中hu
- 2025-01-05在TypeScript中如何从子类调用基类构造函数?
在TypeScript中,你可以使用super关键字来从子类调用基类(也就是父类)的构造函数。super关键字在子类的构造函数内部使用,而且必须在使用this关键字之前调用。下面是一个简单的例子:classBaseClass{constructor(publicname:string){console.log("BaseClassconstru
- 2025-01-046.java方法重载和方法重写之间的区别是什么
Java中的方法重载(MethodOverloading)和方法重写(MethodOverriding)是两个不同的概念,它们虽然名字相似,但含义和用途有显著区别。下面是它们之间的详细对比:1.定义方法重载(MethodOverloading):指在同一个类中,方法名相同但参数列表不同(参数的个数、类型或顺序不同)的情况
- 2025-01-04模板方法模式的代码实践示例
模板方法模式的概念:在操作中定义算法的框架,将一些步骤延迟到子类中。模板方法允许子类在不改变算法结构的情况下重新定义算法的某些步骤。什么时候可以用模板方法模式?有很固定的流程和步骤,就可以使用模板方法模式。所有子类都会按照相同的模板执行算法。子类不能改变算法结构
- 2025-01-03设计模式 - 模板方法模式
概述模板方法模式(TemplateMethodPattern)是一种行为型设计模式,它定义了一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法模式使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。通过使用模板方法模式,可以提高代码的复用性和灵活性。结构模板方法模式
- 2025-01-02Java课程学习总结
学号202302151042陈辉扬Java基础概念Java是一门面向对象的编程语言,以其跨平台性著称。Java代码被编译为字节码(bytecode),通过JVM在不同的平台上运行,无需重新编译。Java提供了多种数据类型,包括整数类型(byte、short、int、long)、浮点类型(float、double)、字符类型(cha
- 2025-01-02Java学习笔记06-多态polymorphism
一、多态1、含义:多态是在继承/实现情况下的一种现象,表现为:对象多态、行为多态多态的具体代码体现:packageorg.example.polymorphism1;publicclassAnimal{publicStringname="动物";publicvoidrun(){System.out.println("动物跑");}
- 2024-12-31fastjson 序列化踩坑
坑1:包含转义符的子对象反序列化场景这样一个json字符串[{"value":"定位标志:0,GPS:9,POWER:1,GSM:15","name":"positionType","metadata":"{\"timestamp\":1735119664668}"}]这个json字符串是如何产生的?met
- 2024-12-31UML之泛化、特化和继承
在UML(统一建模语言)中,泛化(Generalization)和特化(Specialization)是面向对象思想中继承(Inheritance)关系的重要概念,它们描述类与类(或用例与用例、参与者与参与者等)之间的一般与特殊的关系。泛化是一种表示类之间继承关系的方式,它指定了子类如何特化超类(父类)的所有特征和行为。在UML中,
- 2024-12-30深入理解 Java 模板模式:代码复用与架构优化的利器
深入理解Java模板模式:代码复用与架构优化的利器在Java编程世界中,设计模式如同智慧的结晶,帮助开发者应对各种复杂的软件开发需求。其中,模板模式(TemplatePattern)以其独特的代码复用和流程标准化能力,成为构建灵活且可维护系统的关键工具。今天,让我们一同深入探究Java中
- 2024-12-29Java难绷细节02---抽象类中只能有抽象方法吗以及有关抽象类的细节探讨
Java难绷细节02---抽象类中只能有抽象方法吗以及有关抽象类的细节探讨标题长的像轻小说首先回答标题抛出的问题——False显然,有抽象方法的类是抽象类,但是,抽象类中只能有抽象方法吗?抽象类可以包含抽象方法,也可以包含具体方法如果一个类包含至少一个抽象方法,用abstract关键字修
- 2024-12-29设计模式(阅读扩展代码)
设计模式----整洁的房间,好动的猫(看源码)解决问题的特定方法解决既有稳定点,又有变化点的问题(全是稳定点写一次就可以,全是变化点--游戏开发、脚本语言不需要编译,热更新数据到服务器)修改少量代码,解决变化的问题设计模式基础面向对象的思想:封装、继承、多态(动态多态用的最多)虚函
- 2024-12-29java学习笔记
202402150557陈佳源基本语法:Java程序由一个或多个类组成。每个类都包含一个或多个方法。每个方法都包含一系列语句。Java是区分大小写的语言。每条语句必须以分号结束。代码块用大括号包围。数据类型:基本数据类型:byte,short,int,long,float,double,boolean,char
- 2024-12-28学习计划:第三阶段(第六周)
目录第三阶段:继承与多态第6周:掌握多态的实现周一:周二:周三:周四:周五:总结一、学习内容回顾(一)理论知识(二)代码实践二、问题与解决(一)问题(二)解决方法三、学习成果四、下周计划第三阶段:继承与多态第6周:掌握多态的实现周一:理论学习:深入学习多态的概念,理
- 2024-12-28Java接口与抽象类深度探索
一、接口1.接口是对行为(方法)的抽象2.为什么设计接口?继承的缺点1:只支持单继承,一个子类只有一个父类,继承的本质是代码的复用。继承的缺点2:继承过来的变量,方法不一定适合子类(父类的代码不一定完全适合子类,这时子类一般会进行重写)接口特点:支持多继承,一个类实现(继承)多个接口;接
- 2024-12-28PTA家居电路模拟3到家居模拟电路4
目录一、答题判题程序第四次迭代1、题目分析2、题目类图3、题目时序图4、题目思路二、家居强电电路模拟程序第一次迭代1、题目分析2、题目类图3、题目时序图4、题目思路三、家居强电电路模拟程序第二次迭代1、题目分析2、题目类图3、题目时序图4、题目思路四、踩
- 2024-12-28java三阶段总结(家用电路模拟)
前言第六次题目集知识点:抽象类,抽象类不能被直接实例化!有抽象方法,抽象方法没有方法体,由继承它的子类提供具体实现。抽象类可以看作是一种模板,子类在实现接口方法时,必须实现接口中的所有抽象方法,除非子类也是抽象类在抽象类和接口中,多态体现为父类引用变量可以指向子类
- 2024-12-27ES6中class继承为什么一定要写super()?super代表什么?
在ES6中,class关键字用于定义一个类,而extends关键字则用于实现类之间的继承。当一个类继承自另一个类时,子类的构造函数中必须调用super()方法。这是因为super()实际上调用了父类的构造函数,以确保父类中的属性和方法能够被正确地初始化并继承到子类中。super关键字在类继承
- 2024-12-25方法重写-java se 进阶-day01
1.方法重写的介绍当子父类中,某方法存在相同的定义(方法名、参数、返回值)时,子类的方法会将父类的方法进行重写操作(覆盖)2.方法重写与方法重载的区别1.方法重载:又称Overload,在同一个类中,方法名相同,参数不同,与返回值无关。其中,参数不同分别为参数类型、参数数量、参数顺序不同2.方
- 2024-12-24Java多态--上转型对象
Java多态概念实现方式上转型对象概念多态:面向对象的三大特性之一多态一句话概括就是,一个类下面的不同子类的实例,对同一个参数输入,得到不同的输出举例:动物类下的小猫、小狗,两只动物分别拍一下,小猫输出“喵喵喵”,小狗输出“汪汪汪”。实现方式多态的方式:类的继承,方
- 2024-12-24继承中的构造函数
基本概念当申明一个子类对象时,先执行父类的构造函数,然后再执行子类的构造函数子类可以通过base调用父类构造函数继承中的构造函数执行顺序ClassGameObject{publicGameObject(){Console.WriteLine("GameObject的构造函数")}}ClassPlayer:Ga
- 2024-12-24里氏替换原则
基本概念任何父类出现的地方,子类都可以替代语法表现:父类容器装子类对象,因为子类对象包含了父类所有的内容方便进行对象存储和管理classGameObject{}classPlayer:GameObject{publicvoidPlayerAtk(){Console.WriteLine("玩家攻击")}}clas
- 2024-12-24继承的基本规则
继承的基本概念一个类A继承一个类B类A将会继承类B的所有成员类A将拥有类B的所有特征和行为被继承的类称为父类、基类、超类继承的类称为子类、派生类子类可以有自己的特征和行为子类只能有一个父类,子类可以间接继承父类的父类基本语法//class类名:被继承的类名//{/