自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 软件危机:如何破解开发困境?

摘要:软件危机指软件开发中出现的质量低、效率低、成本高等问题,主要表现为进度失控、用户不满意、维护困难等。其根源在于软件的无形性、复杂性和不当开发方法。解决途径包括改进技术方法(如结构化/面向对象方法)、使用开发工具和加强组织管理。软件工程作为指导学科,通过生命周期管理、阶段评审等原理,控制复杂性并提升协作效率,最终实现高质量软件的经济开发。方法、工具和过程是软件工程方法学的三要素。

2025-08-29 09:48:38 363

原创 Java反射与设计模式实战解析

a. Properties: 键和值,默认为String类型,创建该类对象时,不要添加泛型。工厂设计模式:用于解决程序中对象创建的问题,一个工厂的作用在于完成对象的创建。类对象,从而获取该类的信息,直接通过类对象进行一系列操作。所以开发时,对于封装的实体类,建议提供无参数的构造方法。类的对象:基于定义好的一个类,创建该类的实例,即利用。方法,获取类的对象,默认调用无参数的构造方法。类对象:类加载的产物,封装了一个类的所有信息。:获取自身所有方法,包含非公开的方法。通过反射获取类对象,会导致类进行类加载。

2025-08-24 11:05:18 840

原创 多线程编程:从入门到精通

本文摘要:文章系统讲解了Java多线程编程的核心知识,包括进程与线程的基本概念、线程的创建方式(继承Thread类/实现Runnable接口/Callable接口)、线程状态管理(sleep/join方法)、线程同步机制(同步代码块/方法)、线程通信(wait/notify)以及线程池的应用。重点分析了线程安全问题的解决方案,对比了不同集合类(ArrayList/Vector、HashMap/Hashtable)的线程安全性差异,并介绍了高效并发工具类(CopyOnWriteArrayList、Concur

2025-08-22 18:09:37 503

原创 Java IO流详解:从概念到实战应用

注意:如果指定文件不存在,则系统默认创建新的文件,但是如果指定文件夹不存在,则报错,错。相对路径:默认在项目的根目录下查找所需要的文件,有直接用,如果指定文件不存在,则系统默。参数:代表操作文件的路径及文件名,但是如果指定的文件找不到,则系统不会默认创建,直接报。如果参与对象序列化的对象中有自定义类型的属性,则自定类型的属性对应的类也必须实现。一次性从文件中读取一个字节的内容,读取的内容作为返回值返回,如果达到文件的尾。但是如果集合中存储的是自定义类型的对象,则自顶类型的对象对应 的类也需要实现。

2025-08-18 15:54:58 906

原创 Java接口详解与实战技巧

接口与接口之间为多继承关系如果实现类不想成为抽象类,则需要覆盖接口中所有的抽象方法,而且覆盖接口中方法时,访问权限必须是public(由于接口与接口之间为多继承,类与接口之间为多实现的关系,所以利用父类型(注意:以哪一个接口类型的引用调用方法,只能调用该接口中定义的方法。接口:是一种标准,接口的实现者和使用者都必须遵循的约定。普通接口:接口中有多个抽象方法,或许还有属性开发中最常见。如果一个类实现接口,需要实现所有方法,包括父接口的。标记接口:也称为 空接口,接口中没有定义任何。

2025-06-18 10:48:08 761

原创 Java异常

本文摘要:Java异常处理机制主要包括:异常分类(Error不可恢复错误、Exception可处理异常,含RuntimeException和非RuntimeException)、异常产生方式(自动/手动throw)、异常传递机制以及两种处理方式(消极throws声明和积极try-catch捕获)。重点强调了运行时异常与非运行时异常的区别、多catch结构的匹配规则、finally的应用场景,以及方法覆盖时对异常处理的限制(子类不能抛出更宽异常)。最后提及自定义异常需继承Exception类并提供特定构造方

2025-06-18 10:34:30 485

原创 JavaSE 第三个阶段:API (高级开发篇)

注意:由于不同的对象在堆空间中有不同的十六进制的地址,所有不同的对象具有不同哈希码值。的字面值是字面常量,如果在字符串上进行操作,在原有字符串的基础上拷贝一个副文本,在副。返回对象的整数哈希码值。对象的哈希码值来源是将 十六进制的地址,转换十进制的整。将所有的垃圾对象一次性进行回收,垃圾回收器进行回收垃圾对象时,自动调用。自动拆箱:包装类型的引用可以直接赋值给其对应的基本数据类型的变量。两端 为引用类型的变量,则判断引用中存储的地址是否相同。垃圾回收的目的:清除垃圾对象,释放空间,提高空间利用率。

2025-06-11 17:16:33 541

原创 java内部类

局部内部类对象的创建,必须在定义它的方法内部创建,并且在类的定义位置后面完成对象的创建。基于一个匿名内部类只能创建该类的一个对象,并且匿名内部类的定义和对象的创建一起完成。局部内部类的方法中可以访问定义它的方法内部的局部变量,但是要求局部变量必须 被。内部类的分类:成员内部类、静态内部类、局部内部类、匿名内部类。内部类可以直接使用外部类私有成员,从而不破坏外部类的封装性。静态内部类只能访问外部类的静态成员(静态属性和静态的方法)匿名内部类:是一个特殊的局部内部类。内部类:定义在一个类内部的类。

2025-05-28 16:08:33 755

原创 java接口

如果引用之间相互强制类型转换,转换的一方为接口类型的引用,则编译一定通过,但是运行的时候分以下两。接口定义好之后,将接口的实现者和接口的使用者分离,借助多态,降低各模块之间的耦合度。注意:遇到接口回调的应用,开发人员需要关注的是根据接口规范,给予接口的实现部分。接口:是一种标准、规范,是接口的实现者和接口的使用者都必须遵循的约定。接口回调:接口定义之后,先有接口的使用者,再有接口的实现者。中的接口之间的继承关系是多继承,一个接口可以有多个父接口。实现类实现接口中的方法时,方法的访问修饰符必须是。

2025-05-21 19:05:44 929

原创 java三个修饰符

注意:如果在静态方法中访问非静态成员,则可以利用创建对象,用对象名调用非静态的成员。抽象类中有构造方法,抽象类中构造方法供子类创建对象,先去完成父类对象的创建时应用。作用:在类加载时,按照和静态属性定义的先后顺序,完成对静态属性的初始化工作。作用:在创建对象时,按照和属性定义先后顺序,完成对属性的初始化工作。③ 子类的类加载会导致其父类先进行类加载:先加载其父类,再加载子类。先加载父类:为父类的静态属性分配空间并完成父类静态属性的初始化。再加载子类:为子类的静态属性分配空间并完成子类静态属性的初始化。

2025-05-19 18:27:36 993

原创 面向对象的三大特性(封装、继承、多态)

子类的属性 和方法要比父类更复杂,所以子类的构造方法需要完成更多的赋值内容,所以父类的构造。构造方法的方法名必须和类名一样,子类和父类各有不同类名,所以子类继承父类的构造方法不满足。如果 子类的方法名、返回值类型和父类相同,但是形式参数列表不同,编译通过,运行通过。会自动的检测子类是否覆盖了父类中方法,如果子类覆盖父类中方法,则执行。父类中属性和方法是将每一个子类的共性进行提取,决定父类中属性和方法。用父类型的引用调用属性或是成员方法,只能调用父类中定义的属性和方法。构造方法、属性和成员方法来思考。

2025-05-14 19:08:06 895

原创 java面向对象

面向对象:想将程序中所用到的对象找出,作为整体进行应用,利用各对象之间的关系,进行解决问题。开发建议:定义一个类时,通常提供无参数的构造方法和有参数的构造方法,没有特殊说明的情况下,有。指定时先精确匹配,精确匹配不成功,再就近向上匹配,如果还不成功,则编译报错。注意:开发时,类中定义属性,只需定义程序功能所关注的那部分属性即可。用在类中的成员方法或是构造方法中,代表调用当前对象的属性或是成员方法。,此时用引用调用属性或是方法,则编译通过,运行报错,错误信息如下。

2025-05-12 21:22:03 760

原创 Java 数组

语法规定:一个函数中最多只能定义一个可变长参数,并且可变长参数必须定义在形参最后一个位置。使用:可变长参数会自动生成对应类型数组,所以在函数中直接将 可变长参数当做数组应用即可。概念: 可以通同时存储多个 相同类型的数据,并且可以对其中的多个数据统一操作。选择排序:固定一个下标对应的元素,和其他元素进行一一比较,较小数据逐步往前移。数组类型的变量相互赋值,传递的是数组在内存中首地址。数组的遍历:对数组中的元素进行一一访问的过程。将原数组中的元素进行一一复制到新数组中。

2025-05-08 21:18:49 943

原创 java函数

函数的执行原理:程序执行过程中,遇到函数的调用,则程序跳到被调用的函数内部执行,被调用函数执行完。使用:形式参数它相当于 函数的内容的局部变量,在函数内部可以直接通过参数名直接。实参的作用:实参给形参赋值,实参必须和形参 的个数、顺序、类型一致。概念:一个函数的内部调用了自身函数,这种现象称为递归调用。函数的返回值类型、函数名、形参列表称为函数的三要素。函数的嵌套调用:被调函数的内部,又调用了其他的函数。参数:调用者调用函数的时,传递的数据成为参数。返回的结果必须和约定的返回值类型结果一致。

2025-05-07 23:37:09 840

原创 【循环结构】

(2) 循环执行的原理:先进行循环变量的初始化①,然后判断循环条件②,条件成立(结果为true),执行循环体④, 接着执行循环变量的改变③,再次判断循环条件②,条件成立,继续执行循环体④,再次改变循环 变量③,直到循环条件不成立(结果为false),结束循环,继续循环之后的内容。(2) 执行的原理:先执行循环体,同时循环变量进行改变,再判断循环条件是否满足,满足,继续执行循环 体,同时循环变量改变,再判断循环条件,直到循环条件不满足(结果为 false为止),结束循环,继续执行循环 后面的内容。

2025-04-21 19:09:23 1016

原创 java分支结构

执行的原理:如果布尔表达式的结果为true,则执行{}中内容,如果为false,则不执行{}中的内容。(3) default语句没有位置要求,只有当 所有的case中的数据和表达式的结果都不匹配时,才执行default;(2) 执行原理:从上往下依次判断,哪一个布尔表达式的结果为true,则执行对应的后面{}中的代码块的内容, 如果都不成立,则执行 else中的内容。执行的原理:如果布尔表达式结果为true,执行表达式1,布尔表达式结果为false,则执行表达式2.(1) 语法: if(布尔表达式1){

2025-04-15 19:48:57 356

原创 java运算符+Scanner(扫描仪)

(2) ||:逻辑或,只有两端有一个为true,结果就是为true,同时为false,结果才为false.(短路)(5) | :或,只有两端有一个为true,结果就是为true,同时为false,结果才为false.(非短路)注意:开发时关注于 让变量自身加1运算/减1运算,使用 a++/++a / a--/--a,通常不关注,(2) 执行的原理:如果布尔表达式结果为 true,执行 表达式1,如果为false,执行表达式2。(4) & :与,只有当两边都为true的情况下,结果才为true。

2025-03-31 20:10:39 400

原创 变量、数据类型

(4) 布尔类型 关键字 : boolean 字面值仅有 true 和 false -》1B(一般不关注) 注意 : Java中的boolean区分于 C中的 boolean ,C语言中的0-false;// 结果打印 15 c. 整数类型的变量中的数据不合理,数据强转结果截断 例如: int i = 257;(1) byte -> short ->int ->long -> float -> double 小数据类型的变量 可以直接赋值为大数据类型的变量-》自动提升为大数据类型。

2025-03-23 22:02:03 564

原创 第一个Java程序HelloWorld编程

(1) 硬性规范(语法规范,必须遵循) 【重点:面试+应用】 a. Java中的标识符只能以 数字、字母、_(下划线)、$命名,但是不能以数字开头;(3) 文档注释: /** 对类 和 函数/方法的解释说明 */ 生成文档的指令: javadoc -d . 源文件名.java -》在当前目录下生成文档 javadoc -d dos 源文件名.java ->在 dos 文件夹中生成解释文档,文件夹系统默认创建 注意:对于文档注释是对 类 和 函数或是 方法的解释。(2) java 包名.类名 七、编码规范。

2025-03-17 19:36:59 362

原创 第一个Java程序

在图1-21中,src文件夹是Java代码编写的目录,右击该目录,在弹出的快捷菜单中选择 Tew选项,再选择Class选项,创建Java类(类是Java语言中编写程序的基本单位)。指定包 IPackage名称为javaoo(可以自行指定包名称),指定类名 Name为Hello World,勾选pu blic static void main (String[] args),单击Finish按钮完成类的创建。public修饰的类称为公有类。主方法是JaVa应用程序运行的起点,运行一个类时,总是先运行主方法。

2025-03-15 21:31:38 443

原创 C语言:程序设计基础知识

1 .三种基本结构三种基本结构包含顺序控制结构,分支控制结构,循环控制结构。这三种结构按不同次序进行执行,从而在整体上实现结构模块化,从而遵循自顶而下的设计方法。2 .注释的要求注释分为序言性注释,功能性注释序言性注释包括:每个模块的用途功能;模块的调用方式,参数描述;重要数据的名称,用途等;一. 计算机语言计算机语言是指用于人与计算机之间通信的语言,总体而言分为机器语言,汇编语言,高级语言三类。其中,C语言就是一种高级语言。3. 伪代码规范:使用缩进,自然语言加上某种常用语言的格式语句,忽略细节。

2025-03-11 17:31:21 131

原创 DeepSeek发展背景与前景

自 2023 年 7 月成立以来,DeepSeek 在短短一年多的时间里取得了显著的进展,推出了多个引人注目的开源模型,包括 DeepSeek Coder、DeepSeek LLM、DeepSeek-V2、DeepSeek-V3 和 DeepSeek-R1。同时,DeepSeek还积极与全球开发者合作,共同推动AI技术的进步。2024 年 12 月 26 日:发布 DeepSeek-V3,总参数达 6710 亿,采用创新的 MoE 架构和 FP8 混合精度训练,训练成本仅为 557.6 万美元。

2025-03-06 16:28:34 981

原创 初识Java

它的设计初衷是创建一种简单、面向对象、分布式、解释型、健壮、安全、结构中立、可移植、高效、多线程、动态的语言。Java 9及以后:Java 9引入了模块系统(JPMS,Java Platform Module System),Java 10-17继续完善语言特性,如局部变量类型推断(var)、switch表达式、文本块(Text Blocks)等,以及性能优化和安全性增强。引入了Lambda表达式、Stream API、日期时间API(java.time包)等,使得Java编程更加简洁和现代化。

2025-03-06 16:16:02 189

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除