lesson5 高级类特性

element的el-cascader组件动态加载,以及报错处理问题 Blocked aria-hidden on an element because its descendant retained focus. The focus must not be hidden from assistive technology users. 报错处理 阅读详情

1.static关键字

     静态块比构造器先执行

     静态方法只能访问静态的,非静态方法可以访问静态的和非静态的

 

2.单子(Sington)设计模式

    在整个应用中,只有一个实例存在。

   例:  public class Single

            {  

                  private double r;

                  private static Single sp;

                  private Single()                      //私有构造器,因此不能随便new

                  {   r = Math.random();  }        //产生一个随机数

                  public static Single getInstance()       //返回Single的实例

                  {

                       if(sp == null)

                       {

                           sp = new Single();

                           return sp;

                       }

                 }

                 public double getR()

                 {    return  r;  }                         //用于检测是否为同一个实例

                 public static void main(String[] args)

                 {

                      Single s1 = Single.getInstance();

                      Single s2 = Single.getInstance();

                      System.out.println(s1.getR());

                      System.out.println(s2.getR());

                 }                                            //两个结果相同,表示是同一个实例

3.final关键字

       final类,不可被继承

       final变量,在初始化后不可改变变量值(如果final变量是引用变量,则不可以改变它的引用对象,但可以改变对象的数据)

       final方法,不可被覆盖

4.abstract关键字

      abstract抽象类,不能被实例化

      abstract抽象方法,只有方法声明,没有方法的实现

      抽象类里面并非一定需要抽象方法,但是没有抽象方法,抽象类就没有存在的必要

  在以下任一条件成立时,类必须定义成抽象类:

      1)类中有至少一个抽象方法

      2)类继承了父类中的抽象方法,但是至少有一个抽象方法没有实现

      3)类实现了某个接口,但没有全部实现接口中的方法

5.模板设计模式(Template Pattern)

    在类中定义了某个算法的骨架,但不具体实现,而在其子类中实现

6.接口(interface):是方法和常量值的定义的集合

     接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有实现

     定义格式:<modifier> interface <name> [extends<superinterface>]

                      {    [<attribute declarations>]

                           [<abstract method declarations>]

                      }

  抽象类里可以有非抽象的方法和属性,也可以有抽象的方法和属性

  接口中只包含常量和方法的定义,没有实现

7.接口的继承

    接口和类类似,也可以从一个父接口中派生,接口的继承也是使用extends来完成

   语法:<modifier> interface <name>

             [extends <super interface>,<super interface>]

             {    [<attribute   declarations>]

                  [<abstract method declarations>]

             }

   和类不同的是,一个接口可以继承多个父接口

8.实现接口:

      多个无关的类可实现同一个接口,一个类可实现多个无关的接口

  语法:  <class declaration>  ::=

               <modifier> class <name> [extends<superclass>]  [implements<interface> [<interface>]*]

               {   <declaration> *  }

   在java中,可以通过接口来模拟多继承

例: 抽象类    public abstract class People

                       {

                             public abstract int yearSalary();

                        }

                       public class Worker extends People

                       {

                              public int yearSalary()

                              { ....}

                       }

        接口        public interface Pelple

                       {

                              public int yearSalary();

                       }

                       public class Worker implements People

                       {

                              publci int yearSalary()

                              { ....}

                       }

9.多态(Polymorphism)

   一个类型为Aclass的变量既可以指向类型为Aclass的对象,又可以指向Aclass的任何子类的对象(继承的对象和实现的对象)

     一个对象只能有一种确切的数据类型

      一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就不能再访问子类中添加的属性和方法

10.对象造型(Casting)

     所谓造型就是Java对象间的类型转换,分为自动造型和强制造型

        对象的造型只用在有继承关系的对象之间

11.内部类(inner class)

       允许一个类的定义出现在另一个类中,将处于另一个类中的“寄生类”称为内部类

        内部类对其封装类的内部成员有访问权限

       实例化内部类的两种方法:

              1) Outer.Inner in = new Outer().new Inner();

              2) Outer o = new Outer();

                  Outer.Inner = o.new Inner();

               如果内部类是static的,也可以用下面的方法:

                   Outer .Inner  in = new Outer.Inner();

12.异常

             try{ 程序代码段 业务逻辑 }

             catch(Exception e) { 异常信息 }

             finally{程序一定会运行的代码,程序尾声 }

    RuntimeException:是那些可能在Java虚拟机正常运行期间抛出的异常的超类。

          如:ArithmeticException,EmptyStackException,IndexOutOfBoundsException

    抛出异常:在定义一个方法的时候,如果并不能确定如何处理其中可能出现的异常,可以不在方法中对异常进行处理,而是将可能发生的异常让这个方法的调用者来处理。

        不要抛出如下异常:1)从Error中派生的那些异常   2)从RuntimeException中派生的那些异常

    方法中抛出异常的格式: <modifier> <returnType> methodName ([argument_list>]) throws <exception_list>  {....}

    捕获和抛出结合使用:捕获异常和抛出异常的方式,并不是排它的,它们可以结合使用

 方法覆盖中的异常:

            当子类中的方法覆盖父类中的方法时,可以抛出异常

            覆盖方法抛出的异常,可以抛出与被覆盖方法的相同的异常或者被覆盖方法的异常的子类异常

    Error:例 IOError, ThreadDeath , VirtualMachineError

QMT量化交易实战:如何用通达信预警数据自动买卖股票(附完整Python代码) 本文详细介绍了如何利用QMT平台结合通达信预警数据实现股票自动化交易,提供完整的Python代码实现。通过实时监控通达信预警板块文件,系统自动执行买卖操作,提升交易效率。文章涵盖系统架构设计、数据对接、信号处理、订单执行等核心模块,适合量化交易初学者和通达信用户参考实践。 阅读详情

相关推荐

机械臂速成小指南(八):标准DH法实战——从连杆坐标系到运动学方程

本文详细介绍了机械臂运动学建模中的标准DH法,从连杆坐标系的建立到运动学方程的求解,提供了实用的操作步骤和代码示例。通过DH参数表和变换矩阵的构建,帮助读者快速掌握机械臂运动学建模的核心技术,并解决实际应用中的常见问题。

oo7890的博客 211

lesson25:Python类的成员与动态特性全解析

本文系统解析了Python面向对象编程中类的五大成员(实例属性、实例方法、类属性、类方法、静态方法)及其应用场景,深入探讨了Python作为动态语言的运行时灵活性特性。文章包含以下核心内容:1)详细阐述各类成员的定义方法、访问规则和使用场景;2)分析动态特性的实现方式,包括动态添加/修改属性和方法、调整继承关系等;3)提供类成员使用指南和动态特性最佳实践;4)解答常见问题并给出解决方案。通过理论讲解与代码示例相结合的方式,帮助开发者掌握Python面向对象编程的核心机制,同时理解如何合理利用动态特性实现灵活

2402_82363599的博客 1264

第18届全国大学生智能汽车竞赛四轮车开源讲解【2.5】-- 图像处理实战:从二值化到边缘检测的工程优化

本文深入讲解了第18届全国大学生智能汽车竞赛四轮车开源项目中图像处理的核心实战技术。文章聚焦于二值化与边缘检测两大关键环节,详细对比了大津法与索贝尔算子的工程应用与优化策略,并分享了遮光、偏振片等物理抗干扰技巧,旨在帮助参赛者构建稳定高效的图像预处理流水线,为赛道识别奠定坚实基础。

weixin_29279047的博客 100

【C++】类和对象——Lesson2

运算符重载

小羊的博客 2449

Tushare Pro的安装使用——“抱歉,您没有访问该接口的权限,权限的具体详情访问:https://tushare.pro/document/1?doc_id=108”问题

最近做毕设关于量化交易的, 因此一直使用tushare作数据源,但是过程中到一些问题,因此这里写篇文章,供大家一起交流下。 Tushare简介 Tushare是一个免费、开源的python财经数据接口包。拥有如股票、基金、期货等行情数据,公司财务、基金经理等基本面数据,以及债券、外汇、行业、大数据、区块链。Tushare返回的绝大部分的数据格式都是pandas DataFrame类型,因此非常方便...

sinat_40875078的博客 1万+

NVIDIA DGX Spark 深度应用解析:从大模型训练到边缘推理的完整实践指南

内存管理:充分利用统一内存架构,避免不必要的数据传输批处理大小:根据模型大小调整批处理大小以优化内存使用精度选择:在精度损失可接受范围内使用较低精度计算流水线优化:重叠计算和数据传输操作DGX Spark作为一个专门的AI计算平台,在大模型开发的各个阶段都能发挥重要作用。从数据预处理到模型训练,从微调到推理部署,其统一内存架构和强大的计算能力为AI开发者提供了前所未有的本地开发体验。需要注意的是,虽然DGX Spark性能强大,但合理的算法设计和系统优化仍然是获得最佳性能的关键。

time_days的博客 2871

lesson5 线程的高级属性

1. 一次性初始化: 互斥量智能初始化一次,再次初始化会出现错误。比如自己写库函数时将互斥量封装进去,这时一次性初始化就用上场了。 定义变量pthread_once_t once_control = PTHREAD_ONCE_INIT; void init_routine(){ //初始化互斥量 //初始化读写锁 } 接下来在函数pthread_once引用上述变量和函数,多线程只会

wenwen111111的专栏 313

ESP32、MicroPython、天问ASR-PRO,串口发送数据并播报

天问ASRPRO语音芯片内置脑神经网络处理器,支持DNN、TDNN、RNN等神经网络及卷积运算硬件运算,非软件运算,支持语音识别、声纹识别、语音增强、语音检测、单麦克风降噪增强、单麦克风回声消除、360度全方位拾音等功能。ASR-PRO可以图形化编程,降低开发难度,对小白友好。之前使用ASRPRO与ESP32进行过语音控制,这次由于一个项目需要对ESP处理过后的数据进行播报,就想到利用该模块。以下程序主要为测试代码,并非实际项目,仅供参考学习(若有错误,欢迎指正)。二者通过串口通信,波特率为9600。

weak_student的博客 5951

Python编程_Lesson010_函数高级特性

空函数的实现有时候,我们只写了一个函数声明,这在Python中是不可以的,我们还需要对这个函数进行实现,但是我们还没有确定好这个函数的功能,那该怎么办呢?我们可以使用pass关键字来实现!>>> def myfunc(): pass 函数的高级特性函数的本质我们一开始就接触的一个函数,叫做print函数,那么它有什么特性呢?>>> print <built-in function print

艺术人生的专栏 866

避坑指南:CesiumLab+ENVI处理Sentinel-2影像数据的完整流程

本文提供了一份详细的避坑指南,完整介绍了如何利用CesiumLab和ENVI工具链,将Sentinel-2卫星影像处理成可供Cesium三维地球引擎加载的离线瓦片数据。内容涵盖数据获取、SNAP预处理、ENVI影像增强合成以及CesiumLab切片配置等全流程实战步骤与关键参数优化,旨在帮助工程师高效构建自主可控的高精度离线地图服务。

weixin_29248653的博客 291

OS实验xv6 6.S081 开坑

OS实验xv6 6.S081 开坑 终于把xv6 2019 6.S081做完了,网络部分没有写,因为有计网实验了。怎么说呢,xv6的坑有点多,能做完多亏了:和我同学ljj交流,参考RedemptionC老哥的博客(他写的非常详细,遗憾的是,他好像没有写mmap),再者就是参考这位老哥的做法(没有源码,写得不是特别详细,不过有借鉴作用,mmap就是借鉴了他的思想)……废话不多说了,直接开始。 实验指导 首推RedemptionC的博客 这位老哥的个人博客 xv6 6.S081官网(后面的实验都要参考官网

不定期更新系统使用、编程小技巧,哔哩哔哩账号:https://space.bilibili.com/399455629,欢迎关注 4493

析构函数 undefined reference_C++ Lesson 3:函数与类

终于来到了C++第一个重点内容:函数function和类class的搭建。当时学习的时候,也花了很多时间才搞定了这一块。。。其实反过来看,因为当时花了时间,打好了基础,现在复习速度应该很快。希望大家都能够搞懂这一块。主要内容:函数传参、返回值按值传递按引用传递按引用常量传递按指针传递类声明和定义分开构造器成员初始化列表——member initializer lists操作符重载友元函数对象析构e...

weixin_39746794的博客 389

如何为 Claude Code 配置代理与网络环境

那么大概率不是软件问题,而是。因为 Claude Code 是运行在终端里的,不是浏览器。

sg_knight的专栏 3480

lesson51:CSS全攻略:从基础样式到前沿特性的实战指南

本文系统梳理了2025年CSS的核心技术与前沿特性,包含字体智能适配、文本排版优化、背景动态主题、智能布局方案和高级交互效果五大模块。重点介绍了15+实战案例,涵盖:has()选择器、容器查询、原生嵌套、滚动驱动动画等突破性特性,以及light-dark()主题适配、OKLCH色彩空间等创新功能。文章提供了渐进增强策略和性能优化技巧,帮助开发者构建高效、美观、响应式的现代Web界面,展现CSS作为完整设计系统工具的演进方向。通过掌握这些技术,开发者可以显著提升样式代码的简洁性、性能和兼容性。

2402_82363599的博客 1314

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

lesson69:Bootstrap 5 基础与组件全解析:2025年Web开发必备指南

Bootstrap 5作为主流前端框架,2025年仍保持v5.3.0稳定版本,具备移除jQuery依赖、强化移动适配、Sass集成等特性。其核心优势包括:12列响应式网格系统、200+实用工具类、80+预制组件(导航栏、卡片、模态框等),支持快速构建WCAG2.1AA标准页面。通过Sass变量覆盖和官方图标库可深度定制,配套开发工具提升效率。Bootstrap5以"约定优于配置"理念,平衡开发速度与代码质量,是现代Web项目的高效解决方案。

2402_82363599的博客 1280

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

lesson12:Python的集合

python的数据类型最后一课集合。集合作为Python的无序唯一元素容器,凭借哈希表实现O(1)高效查询,擅长去重、成员检查及数学运算。分为可变set和不可变frozenset。

2402_82363599的博客 1177

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

lesson40:PyMySQL完全指南:从基础到高级的Python MySQL交互

本文全面介绍了Python操作MySQL数据库的首选驱动PyMySQL。内容涵盖环境配置、核心功能、安全实践、高级应用架构及实战案例,重点讲解了SQL注入防护、连接池优化、ORM集成等关键知识点。通过用户认证系统、数据ETL管道等三个实战项目,展示了PyMySQL在企业级应用中的完整解决方案。文章还提供了性能调优指南和异常处理体系,帮助开发者构建高效安全的数据库应用。最后推荐了官方文档和进阶书籍等学习资源,适合从入门到精通的各阶段开发者参考。

2402_82363599的博客 1753

Python——lesson

学习笔记,不定时更新

weixin_73706820的博客 1477

Python编程_Lesson008_Python特性

list高级特性参考资料 我们现在有一个需求,想取一个列表里面的前两个元素作为新列表的元素,该怎么办呢?有人说那很简单嘛,下面就可以完成:>>> mylist = [1,2,3,4,5] >>> mylist [1, 2, 3, 4, 5] >>> otherlist = [mylist[0], mylist[1]] >>> otherlist [1, 2]这不是So Easy吗? 但是上面

艺术人生的专栏 339

cpp初阶--Lesson 04 类和对象(下)

Lesson 04 类和对象(下) 【本节目标】 1. 再谈构造函数 2. C++11 的成员初始化新玩法。 3. 友元 4. static成员 5. 内部类 6. 再次理解封装 虽然构造函数调用之后,对象中已经有了一个初始值,但是不能将其称作为类对象成员的初始化,构造函数体中的语句只能将其称作为赋初值,而不能称作初始化。因为初始化只能初始化一次,而构造函数体内可以多次赋值。(这句话可以这样理解:就像 int a=1;声明一个a变量且初始化为1,而在程序之后再也不用对a初始化。而构造函数是一个函数,他可以多

VegetableGirl的博客 237

java lesson2

Java SE Lesson 2 1. 多态:父类型的引用可以指向子类型的对象。 2. Parent p = new Child();当使用多态方式调用方法时,首先检查父类中是否有sing()方法, 如果没有则编译错误;如果有,再去调用子类的 sing()方法。 3. 一共有两种类型的强制类型转换: a) 向上类型转换( upcast):比如说将 Cat 类型转换

junyuanxu的专栏 282

《Unix Lesson 5》

/** * 《Unix Lesson 5》 * @高级I/O * 非阻塞IO * 读写打开类IO操作不会进行阻塞,如果这种才做不能完成则直接返回错误。 * * 记录锁 【字节区域锁】 * 如果某个进程正在读写某个文件,使用记录锁组织其他进程进行相同的文件区读写 * * 存储映射I/O * .

多头注意力探索Now 213

lesson11:Python的字典及方法

python的数据类型之三,在学习列表和元组后了解并学习python中最灵活最高效的数据类型之一字典。无论是存储用户信息、解析JSON数据,还是实现缓存机制,字典都以“键值对”的直观映射方式,成为处理关联数据的首选。

2402_82363599的博客 1693

从 RGB 到光谱:spektrafilm 光谱上采样技术(Mallett/Hanatos)原理完全详解

spektrafilm 是一款模拟胶片摄影全流程的光谱级项目。它的核心难点之一,是如何把普通 RGB 图像"反推"成完整的光谱曲线——这正是**光谱上采样(Spectral Upsampling)**要解决的问题。本文带你彻底理解 spektrafilm 内置的两套方案:经典的 **Mallett 2019**(基于基函数分解)与默认的 **Hanatos 2025**(基于色度 LUT 查表),

gitblog_00165的博客 914

lesson44:Redis 数据库全解析:从数据类型到高级应用

《Redis与Python开发全指南》摘要:本文全面解析Redis 8.2.0与Python的深度整合,重点介绍redis-py同步/异步接口的核心用法。涵盖字符串、哈希、集合等数据结构实战,特别详解Redis 8.2新增的VectorSet向量搜索功能及其AI应用场景。提供连接池管理、Pipeline优化等性能调优技巧,并给出缓存穿透防护、分布式锁等解决方案。针对Python开发者,推荐使用Redis 8.2.0+与redis-py 6.0.0+组合,通过RESP3协议提升性能,实现从传统缓存到AI语义检

2402_82363599的博客 1536

lesson65:JavaScript字符串操作完全指南:从基础到高级实战

摘要:本文系统介绍JavaScript字符串操作技巧,涵盖基础方法、ES6+新特性及最佳实践。重点讲解字符串不可变性、字符访问方法、模板字符串等核心概念,并提供正则表达式应用、字符串拼接优化等实用技巧。通过格式化金额、URL处理等典型场景示例,帮助开发者构建完整的字符串操作知识体系,提升代码质量与开发效率,最终实现优雅高效的字符串处理。

2402_82363599的博客 1044
上一篇: lesson4
下一篇: lesson7 正则表达式
hxq_java
博客等级 码龄14年 0粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值