avatar
Articles
63
Tags
47
Categories
16

梦之痕

梦之痕

Java--File类与IO流
Created2024-07-07|Java & Lua
1. java.io.File类的使用1.1 概述 File类及本章下的各种流,都定义在java.io包下。 一个File对象代表硬盘或网络中可能存在的一个文件或者文件目录(俗称文件夹),与平台无关。(体会万事万物皆对象) File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。 File对象可以作为参数传递给流的构造器。 想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。 1.2 构造器 public File(String pathname) :以pathname为路径创建File对象,可以是绝对路径或者相对路径,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储。 public File(String parent, String child) :以parent为父路径,child为子路径创建File对象。 public File(File parent, St ...
Java--常用类和基础API
Created2024-07-04|Java & Lua
1 不可变字符序列:String1.1 String的特性 java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如"hello" )都可以看作是实现此类的实例。 字符串是常量,用双引号引起来表示。它们的值在创建之后不能更改。 字符串String类型本身是final声明的,意味着我们不能继承String。 String对象的字符内容是存储在一个字符数组value[]中的。"abc" 等效于 char[] data={'h','e','l','l','o'}。 123456789//jdk8中的String源码:public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage ...
Java--面向对象编程
Created2024-06-30|Java & Lua
1 类和对象1.1 类的定义 是用来描述同一类事物的 可以在内部定义任意数量的、不同类型的变量,作为这一类事物的属性。这种属性叫做成员变量 ( member variable )。 如果一个Java文件中定义了一个public类,则文件名必须与该类的名称相同,包括大小写。 如果一个Java文件中定义了多个类,则只能有一个public类,该类的名称必须与文件名相同。 就好像文件路径+文件名不能重复一样,一个Java程序中相同名字的类只能有一个 12345678910111213// >> TODO 一个类以public class开头,public class代表这个类是公共类,类名必须和文件名相同。// >> TODO public class后面紧跟类名,然后是一对打括号的类体public class Merchandise { // >> TODO 类体中可以定义描述这个类的属性的变量。我们称之为成员变量(member variable) // >> TODO 每个成员变量的定义以;结束 String n ...
Java--并发编程&网络编程
Created2024-06-30|Java & Lua
1 Java中的线程1.1 创建和启动线程1.1.1 概述 Java语言的JVM允许程序运行多个线程,使用java.lang.Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例。 Thread类的特性 每个线程都是通过某个特定Thread对象的run()方法来完成操作的,因此把run()方法体称为线程执行体。 通过该Thread对象的start()方法来启动这个线程,而非直接调用run() 要想实现多线程,必须在主线程中创建新的线程对象。 1.1.2 方式1:继承Thread类Java通过继承Thread类来创建并启动多线程的步骤如下: 定义Thread类的子类,并重写该类的run()方法,该run()方法的方法体就代表了线程需要完成的任务 创建Thread子类的实例,即创建了线程对象 调用线程对象的start()方法来启动该线程 代码如下: 123456789101112131415161718package com.atguigu.thread;//自定义线程类public class MyThread extends Thread { ...
Java--反射机制
Created2024-06-30|Java & Lua
1. 反射(Reflection)的概念1.1 反射的出现背景Java程序中,所有的对象都有两种类型:编译时类型和运行时类型,而很多时候对象的编译时类型和运行时类型不一致。 Object obj = new String(“hello”); obj.getClass() 例如:某些变量或形参的声明类型是Object类型,但是程序却需要调用该对象运行时类型的方法,该方法不是Object中的方法,那么如何解决呢? 解决这个问题,有两种方案: 方案1:在编译和运行时都完全知道类型的具体信息,在这种情况下,我们可以直接先使用instanceof运算符进行判断,再利用强制类型转换符将其转换成运行时类型的变量即可。 方案2:编译时根本无法预知该对象和类的真实信息,程序只能依靠运行时信息来发现该对象和类的真实信息,这就必须使用反射。 1.2 反射概述Reflection(反射)是被视为动态语言的关键,反射机制允许程序在运行期间借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象 ...
微服务架构
Created2024-06-21|后端&架构
1 什么是微服务架构 一种架构风格,将单体应用划分为一组小的服务,服务之间相互协作,实现业务功能 每个服务运行在独立的进程中,服务间采用轻量级的通信机制协作(通常是HTTP/JSON) 每个服务围绕业务能力进行构建,并且能够通过自动化机制独立地部署 很少有集中式的服务管理,每个服务可以使用不同的语言开发,使用不同的存储技术 基于有界上下文的,松散耦合的面向服务的架构 2 微服务架构适用性2.1 什么时候开始考虑引入微服务并不是所有组织和软件都适用微服务架构,应该以单块优先,当系统足够复杂时,再考虑逐步使用微服务架构,关于微服务架构与单体架构的在复杂性和生产力的对比如下:刚开始就选择微服务架构,反而会导致生产力低于选择单体架构,随着系统的复杂度增加,可以选择微服务架构。 2.2 微服务组织架构 从传统职能型到跨职能产品型 微服务架构更适用于跨职能产品型组织,每个产品团队服务完整的产品开发周期,各产品间通过API统一调用。产品团队内负责整个产品的架构、设计、开发、Review、测试、部署、运行、支持。 3 中台战略大中台,小前台:中台作为基础,前台可以快速创新和迭代。 4 微 ...
03 - 数据库技术
Created2024-05-08|认证考试
1 数据库体系结构1.1 三级模式 视图 视图时保存在数据库中的SELECT查询,其内容由查询定义,因此,视图不是真实存在的表,而是一个或者多个导出的虚拟表。 内模式:管理如何存储物理的数据,对应具体物理文件。概念模式:通常使用的基本表,根据应用、需求将物理数据划分成一张张表。外模式:对应数据库中的视图这个级别,将表进行一定处理后再提供给用户使用。 1.2 两级映像逻辑独立性:外模式和概念模式之间的映射。表和视图之间的映射,应用程序与数据库的逻辑结构独立,当数据的逻辑结构改变时,应用程序不变。物理独立性:概念模式和内模式之间的映射,是表和数据的物理存储之间的映射,应用程序与磁盘中的数据相互独立。当数据的物理存储改变时,应用程序不变。 2 数据库设计 2.1 需求分析分析数据的存储要求,产出物有数据流图、数据字典、需求说明书。获得用户对系统的三个要求:信息要求、处理要求、系统要求。 2.2 概念结构设计就是设计E-R图,也叫实体-联系图。 2.2.1 属性冲突局部ER图转换成全局ER图时,需要消除冲突,冲突类型有: 2.3 逻辑结构设计其任务是将概念模型转换成关系模型,ER图向关系 ...
13 - 系统架构设计
Created2024-05-07|认证考试
1 软件架构概述1.1 基本概念软件架构设计主要关注软件构件的结构、属性和交互作用,并通过多种视图全面描述特定系统的架构。 软件架构设计是指通过一系列的设计活动,获得满足系统功能性需求,符合一定非功能性需求与质量属性有相似含义的软件系统框架模型。在软件体系结构设计过程中,主要考虑系统的非功能性需求。软件体系结构设计经验的总结与重用是软件工程的重要目标之一,所采用的手段主要包括体系结构风格、DSSA(特定领域的架构)等技术。 解决好软件的复用、质量和维护问题,是研究软件架构的根本目的。 1.2 架构设计与生命周期1.2.1 需求分析阶段需求和软件架构设计面临的是不同的对象:一个是问题空间;另一个是解空间。保持两者的可追踪性和转换,是软件工程领域追求的目标。从软件需求模型向软件架构模型转换主要关注: 如何根据需求模型构建软件架构模型 如何保证模型转换的可追踪性 1.2.2 设计阶段是关注最早和最多的阶段,这一阶段主要研究:软件架构模型的描述、软件架构模型的设计与分析方法,以及对软件架构设计经验的总结与复用等。有关软件架构模型描述的研究分为三个层次: SA的基本概念:SA模型由哪些元素 ...
Kubernetes集群包管理解决方案及应用商店 Helm&kubeapps
Created2024-04-17|虚拟化&云计算
一、引入helm原因当今的软件开发,随着云原生技术的普及,我们的工程应用进行微服务化和容器化的现象也变得越来越普遍。而Kubernetes几乎已经成了云原生服务编排绕不开的标准和技术。 假设我们需要在K8s中简单部署一个nginx,必要步骤如下: 1、创建或者编写deployment模板 1# kubectl create deployment nginx --image=nginx --dry-run=client -o yaml > deployment.yaml 2、启动nginx的pod 1# kubectl apply -f deployment.yaml 3、检查pod服务 1# kubectl get pod 4、创建service 1# kubectl expose deployment nginx --port=8099 --target-port=80 --type=NodePort --dry-run=client -o yaml > service.yaml 5、启动service服务 1# kubectl apply -f servi ...
设计模式之设计原则
Created2024-04-03|设计模式
1. 什么是设计模式每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,就能一次又一次地使用该方案而不必做重复劳动。 1.1 设计思维两个思维:底层思维和抽象思维 底层思维 向下,如何把握机器底层从微观理解对象构造 语言构造 编译转换 内存模型 运行时机制 抽象思维 向上,如何将我们的周围世界抽象为程序代码 面向对象 组件封装 设计模式 架构模式 2. 面向对象设计2.1 实现层面 向下:深入理解三大面向对象机制 封装:隐藏内部实现 继承:复用现有代码 多态:改写对象行为 向上:深刻把握面向对象机制所带来的抽象意义,理解如何使用这些机制来表达现实世界,掌握什么是“好的面向对象设计”。 2.2 面向对象的设计 理解隔离变化 从宏观层面,面向对象的构建方式更能适应软件的变化,能将变化所带来的影响减为最小。 各司其职 从微观层面,面向对象的方式更强调各个类的“责任”由于需求变化导致的新增类型不应该影响原来类型的实现–是所谓各负其责。 对象是什么? 从语言层面来看,对象封装了代码和数据 从规格层面讲,对象是一系列可被使用的公 ...
123…7
avatar
梦之痕
Articles
63
Tags
47
Categories
16
Follow Me
Announcement
个人笔记迁移中ing....
Recent Post
大模型 RAG 的应用和开发2025-04-29
06 - WASM 插件开发2025-02-12
记录访问 HTTPS 网站报错问题2024-09-28
AI 大模型微调2024-09-03
Untitled2024-08-29
Categories
  • AI大模型1
  • Go & Python6
  • Java & Lua7
  • Linux 内核1
  • 人工智能&大数据4
  • 信息安全3
  • 后端&架构8
  • 工具使用3
Tags
Java DPDK Maven 微服务架构 Python 流量控制 系统优化 Git 程序设计 LVS HTTP3 大模型微调 wasm 四层负载均衡 系统架构设计师 Go 网络 iterm2 杂文 OpenResty MySQL 深度学习 虚拟化 云原生 数据库 Istio Nginx Flink Kubernetes 算法题解 Redis HTTP2 LangChain VPP 软考高级 Linux内核 Calico Tongsuo RAG Helm
Archives
  • April 20251
  • February 20251
  • September 20242
  • August 20244
  • July 20244
  • June 20244
  • May 20242
  • April 20243
Info
Article :
63
UV :
PV :
Last Update :
©2020 - 2025 By 梦之痕
Framework Hexo|Theme Butterfly