『Head First Java』第12章 看图说故事 读书笔记

光伏储能交直流微电网Matlab/Simulink仿真模型 首先是光伏储能交直流微电网,这个也是我还是之前在硕士期间在做光伏扶贫项目时候搭建的仿真,仿真由光伏、蓄电池及负载组成的独立直流微电网,提出电压和电流分段式协同控制策略。接下来我将主要更新关于光伏、风电、储能微电网系统相关的内容,包括具体建模和控制。 阅读详情

事件

  • GUI从创建window开始,通常会使用JFrame
  • JFrame frame = new JFrame();
  • 可以这样加入按钮、文字字段等组件
  • frame.getContentPane().add(button);
  • JFrame与其他组件不同,不能直接加上组件,要用它的content pane
  • 要显示window,得指定尺寸和执行显示动作
  • frame.setSize(300,300);
  • frame.setVisible(true);
  • 监听GUI事件才能知道用户对接口做了什么事情
  • 你必须要对事件源注册所要监听的事件。事件源是一种会根据用户操作而触发事件的机制
  • 监听接口让事件源能够调用给你
  • 要对事件源注册就调用事件源的注册方法,它的方法一定是add<EventType>Listener这种形式。以按钮的ActionEvent注册为例:
  • button.addActionListener(this);
  • 通过实现所有的事件处理方法来实现监听接口。对ActionEvent而言,方法可能像这样:
  • public void actionPerformed(ActionEvent event){
  •    button.setText("Clicked!");
  • }
  • 传递给事件处理方法的事件对象带有事件的信息,其中包括了事件源

图形

  • 二维图形可以直接画在图形组件上
  • .gif与.jpeg文件可以直接放在组件上
  • 用JPanel的子类覆盖paintComponent()方法绘制自定义的图形
  • paintComponent()方法会由GUI系统调用,你不可以自己调用。它的参数是个你不能自己创建的Graphics对象
  • Graphics对象有些你可以调用的方法,像是:
  • graphics.setColor(Color.blue);
  • g.fillRect(20,50,100,120);
  • 使用Image来绘制.jpg:
  • Image image = new ImageIcon("ic.jpg").getImage();
  • g.drawImage(image, 3, 4, this);
  • paintComponent()的Graphics参数实际上是个Graphics2D
  • 调用Graphics2D的方法前,你必须把Graphics对象转换为Graphics2D
  • Graphics2D g2d = (Graphics2D) g;

 

QGis软件 —— 5、QGis增加线,并对线进行绘制、旋转、缩放、移动等基本操作 阅读详情

相关推荐

NACA0012的O型网格求解

本篇文章采用偏微分方程数值解法生成NACA0012翼型O型网格,并采用速度势方程求解绕NACA0012翼型迎角为0度时的低速不可压无粘流场。 文章目录一、求解网格1.翼型2.远场3.网格4.迭代5.求解二、求解流场1.偏微分方程2.迭代求解流场三、求解参数1.偏微分方程2.迭代求解四、导出数据 一、求解网格 1.翼型 本次求解网格和流场等采用的是NACA0012(修形)对称翼型,在NACA四位翼型中,第一位数字代表的是弯度,第二位数字代表的是弯度位置,后两位数字代表的是厚度,由于本次翼型的前两位数字都为0,

m0_50746433的博客 6677

Head First Java读书总结

    纵观全书,这本书的重点在Java的基础语法、对象、多态与继承等概念上的讲解(讲得挺好的),对于一些异常处理、线程、IO、网络方面更多是简单的介绍,并没有深入讲解。 尽管如此,我还是通过阅读这本书学习的到了一些新的东西。这篇笔记,就是为了整理记录这些新学到的知识,以巩固我对这些知识的掌握。 目录1.基本概念:进入Java世界2.类与对象 对象3.primitive主数据类型和引用 认识变量4. 方法操作实例变量 对象的行为5.编写程序 超强力方法6. 认识Jav

adsdaas的博客 762

Flowable前端可视化配置动态审批人:告别硬编码,实现部门领导、项目经理自动分配

本文详细介绍了Flowable前端可视化配置动态审批人的全栈解决方案,通过表达式分配、监听器分配等动态审批人机制,实现从硬编码到智能分配的转变。文章提供了前端扩展bpmn-js设计器、后端动态解析实现方案及性能优化建议,帮助企业应对组织架构变动,提升审批流程的灵活性和效率。

weixin_30352645的博客 473

【Java】《Head First设计模式》读书笔记01: 《Head First设计模式》到底讲了什么?新手怎么学才不会从入门到放弃

Head First设计模式》绝对不是一本让你“读完就忘”的教科书,它是一本训练营手册。它逼迫你不断思考软件变化之源,并通过手把手的故事和代码,把设计原则烙进你的思维里。从策略模式起,你就开始学会“把变化的地方揪出来关进笼子里”。后续每一个模式,都是在不同场景下对这个核心思想的进一步演绎。好好跟着书中的节奏走,别跳步,你会发现:六个月后,当你回看自己过去写的“一锅粥”代码时,会不由自主地皱起眉头,并脑海中自动浮现出一个合适的模式来重构它。那个时刻,你就真正入门了。

1161

tkinter表格进阶:5分钟实现CSV数据可视化编辑界面(含右键菜单配置)

本文详细介绍了如何使用Python的tkintertable库快速构建CSV数据可视化编辑界面。通过导入导出CSV数据、深度定制右键菜单(如复制、插入行、删除行)以及实现单元格验证等进阶功能,开发者能在5分钟内创建一个可嵌入自动化流程的专业级桌面数据编辑工具,显著提升数据处理效率。

931

从零到一:手把手教你用Python+LangChain搭建企业级RAG知识库(附避坑指南)

本文为开发者提供了一份详尽的实战指南,手把手教你使用Python和LangChain框架从零构建企业级RAG知识库。内容涵盖环境搭建、文档处理、向量化检索、提示工程及生产部署等核心环节,并重点分享了文档分割、检索优化等关键避坑经验,旨在帮助读者打造稳定、高效且易于维护的智能知识中枢。

weixin_29058331的博客 398

读书笔记:Head First Java实战(第三版)

面向对象并不是最简洁的,但它将数据和操作合并在一个模块种,易于管理,容易构建大型程序。但是当需求不断补充、拓展、变化时,需要不断修改逻辑代码,伤筋动骨。Java9开始,版本号只有数字,没有开头的“1”,也就是说Java9就是版本9,而不是1.9.Java速度与C和Rust不相上下,JVM可以在运行时优化代码,无需刻意写高性能代码。Java一切都在类中,这种类似全局的方法和数据,仅仅是一种例外,而不是规则。从版本5开始,省略前缀"1."。1996年首次发布,编程时会遇到很多古老代码,Java向后兼容。

m0_51864047的博客 2487

TC3XX - MCAL知识点(一):新建Tc3xx EB-tresos工程

基于EB-tresos建立Hightec或者Tasking工程的时候,第一个步骤就是需要新建一个EB-tresos的工程,本文记录一下如何新建一个EB-tresos工程,以及对其进行简单的操作。那么Tc3xx的MCAL包含哪些内容呢?

梦想技术家 2970

《Head First Java》20200823读书笔记

P21-P37 《Head First Java》20200823读书笔记 P21. 学完第3章再回过头来看 P28. rotate旋转 playSound游戏声 attribute属性 inheritance继承 override覆盖 【理解】阿花和阿珠的故事,面向对象就是把任务分成几个部件,分别加工包装,这样升级修改的时候,就只用升级修改那一个部件。避免牵一发而动全身。 P34. 难理解,要多看几遍。 P35. P36. 两个类运用对象。 一个是要被操作于对象的类; 另一个是用来测试该类

qq_43272318的博客 217

数据资产可视化分析:PowerBI在大数据管理中的实战

目的:帮你搞懂“为什么数据资产需要可视化?”“PowerBI能帮企业解决什么问题?”,并掌握用PowerBI做大数据可视化的实战技巧。范围:覆盖数据资产定义、可视化分析原理、PowerBI核心功能(数据连接、建模、可视化)、零售企业实战案例,以及未来趋势与挑战。背景:为什么企业的数据像乱堆的玩具?核心概念:数据资产、可视化分析、PowerBI分别是什么?它们怎么配合?实战步骤:用PowerBI帮零售企业整理“销售玩具箱”,做出能指导决策的仪表盘;应用场景:不同部门怎么用这个“整理好的玩具箱”?

2501_92132293的博客 906

华为OD机试 - 不含101的数(Python/JS/C/C++ 双机位C卷 100分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。小明在学习二进制时,发现了一类不含101的数,也就是:现在给定一个正整数区间,请问这个区间内包含了多少个不含101的数?输入的唯一一行包含两个正整数。输出的唯一一行包含一个整数,表示在区间内一共有几个不含101的数。8 1668 → “1000”

学Java,找哪吒 1250

【Java】《Head First设计模式》读书笔记02: 策略模式深度解析 - 从“鸭子困境”到掌握设计原则

继承虽然提供复用,但容易把行为静态绑定,导致代码在变化时脆弱不堪。单纯使用接口能抽离行为,但无法复用实现,造成大量重复代码。设计原则1:找出变化的部分并封装之。设计原则2:面向接口编程,而非面向实现。设计原则3:多用组合,少用继承。策略模式定义:定义一系列算法,封装每一个算法,并使它们可以相互替换。策略模式让算法的变化独立于使用它的客户。策略模式的结构:抽象策略接口 → 具体策略实现 → 上下文对象持有策略引用,通过委托执行行为。可以在运行时动态切换策略,提供极大的灵活度。

1280

2023年全国城市房价分布网格数据

本文介绍了一份2023年全国主要城市房价分布的网格数据,数据以250米×250米的网格为单位,记录了住宅小区数量、均价、最高价和最低价等信息。数据采用GCJ-02坐标系,提供ShapeFile、GeoJSON和CSV三种格式

J_Giser的博客 376

【Python】《Head First设计模式》读书笔记01: 《Head First设计模式》到底讲了什么?新手怎么学才不会从入门到放弃

Head First设计模式》帮你建立的是应对变化的思维框架。当你用Python实现一个个模式时,你会发现,语言的灵活性不是用来抛弃设计的,而是让你更优雅地实践设计原则。从策略模式开始,你会习惯性地问:“这里什么可能会变?”然后把变化抽离出去。坚持下去,三个月后,你的代码将充满弹性,而不再是一触即溃的“脆饼”。

934

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【C++】《Head First设计模式》读书笔记01: 《Head First设计模式》用C++学,从“鸭子模拟器”到掌握设计精髓

Head First设计模式》用故事化的方式帮你建立了面向变化的设计思维。当你用C++实现这些模式时,你会发现:内存管理、虚函数开销、模板的静态多态这些语言特性,并不是障碍,而是实现设计原则的强大工具。从策略模式开始,你学会了把变化“关进笼子”。继续学下去,你再看自己过去写的代码,会自然地问:“这里什么可能会变?我该如何隔离它?” —— 那个时刻,你就真的把设计模式学活了。

944

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

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

读书笔记-《Head First 设计模式》

Head First设计模式(Design Pattern),如果还没有学习了解过设计模式,推荐这本书,不会让你失望。

SouthPark的专栏 727

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【Java】《Head First设计模式》读书笔记03: 观察者模式深度解析:让对象之间“心有灵犀”的松耦合通信

定义:观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。类图fill:#333;important;important;fill:none;fill:none;important;important;important;important;important;important;important;important;important;important;important;important;important;important;

1127

【C++】《Head First设计模式》读书笔记02:策略模式C++深度解析:从“鸭子灾难”到设计原则的觉醒

继承提供了复用机制,但会将行为静态绑定在类上,导致需求变化时代码僵化、脆弱。纯虚接口能抽离行为,但无法复用实现,容易导致代码重复。设计原则1:找出变化的部分并封装之。设计原则2:面向接口编程,而非面向实现(在C++中即依赖抽象基类)。设计原则3:多用组合,少用继承。策略模式定义:定义一系列算法,封装每一个算法,并使它们可以相互替换。策略模式让算法的变化独立于使用它的客户。C++实现要点:抽象基类作为策略接口,具体策略类实现接口,上下文持有unique_ptr指向策略,通过set。

1243

Java学习路线总结(书籍、视频推荐篇)_亿级流量java高并发与网络编程实战pdf下载(2)

附上我的书架,《Java编程思想》读了两遍,《深入理解Java虚拟机》读了一遍,《Head First设计模式》读了一遍,《Java并发编程实战》读了一遍,《重构》读了一遍,《Spring实战》没看进去,《Effective Java》读了一遍,《软技能 代码之外的生存指南》读了一遍,《深入理解Java虚拟机第三版》,《微服务实战》《算法4》,《亿级流量Java高并发与网络编程实战》,《JavaScript高级程序设计》,《HTTP权威指南》,《Java性能优化实践》还没开封。

2401_84166811的博客 792

2024年最新Java程序员必看经典书籍,助你早日打通任督二脉,刷java面试题的网站

JVM,JAVA集合,JAVA多线程并发,JAVA基础,Spring原理,微服务,Netty与RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算…本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录。

2401_84584817的博客 733

InnoDB 内存结构总览:Change Buffer、AHI 与 Log Buffer

本文系统梳理InnoDB内存结构中的ChangeBuffer、Adaptive Hash Index(AHI)与LogBuffer。ChangeBuffer缓存二级索引页不在内存时的变更,减少随机IO,仅在页加载时合并;聚簇索引修改立即执行,因数据本身不可延后。AHI基于高频等值查询自动构建哈希索引,加速定位,仅支持等值操作。LogBuffer为redo log内存缓冲,配合磁盘日志实现崩溃恢复。三者均服务于性能优化,其中ChangeBuffer与AHI共享BufferPool空间,而LogBuffer独立

bksczm的博客 286

V8 机制、手写核心函数与 TypeScript 类型体操

或固定初始化(如数组先定长、对象先给全字段)保持类型与形状稳定;这些都比"换框架"更基础。只能处理纯数据(丢函数、Date、RegExp、循环引用报错)。生产级深拷贝要处理:原始值短路、循环引用、V8(Chrome / Node 的 JS 引擎)不是"解释一行跑一行"那么简单,它用。图:V8 执行流程——解释执行 + 热点优化,优化失败会 Deopt 回退。JS 内存自动管理,但"自动"不等于"不会漏"。是"固定间隔最多执行一次"。手写 Promise 是"懂异步"的试金石。是"停下后才执行最后一次",

qq_38468358的博客 346

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)

要努力去发光,而不是被照亮~ 128

Spring Boot 数据源与 MyBatis(-Plus) 自定义配置详解

本文详解 Spring Boot 中单数据源环境下 HikariCP 与 MyBatis-Plus 的自定义配置。通过手动声明 SqlSessionFactory,实现下划线转驼峰、日志输出、一级缓存策略等精细化控制。结合 HikariCP 核心参数调优(如最大连接数、连接生命周期),确保高性能与稳定性。适用于仅需访问单一数据库的场景,避免多数据源复杂性,兼顾性能与可维护性。

BADAO_LIUMANG_QIZHI的博客 198

LeetCode Hot 100 二叉树专题(二)3 题(Java)

本篇文章共 3 题:543. 二叉树的直径、102. 二叉树的层序遍历、108. 将有序数组转换为二叉搜索树。 每道题都统一按「① 题目分析 & 解题思路 → ② 常见解法(附代码)及讲解 → ③ 知识点总结」的顺序组织;代码使用 Java 编写,节点定义沿用 LeetCode 默认的 TreeNode。

2401_88612756的博客 365

【从零理解 Spring AI · 12】MCP 的两种角色:做客户端还是做服务端

上一篇讲了 MCP 的概念:标准协议、三大角色、M+N 替代 M×N。

nice_lcj520的博客 499
上一篇: 『Head First Java』第11章 有风险的行为 读书笔记
下一篇: 『Head First Java』第13章 使用Swing 读书笔记
Language_Participant
博客等级 码龄9年 0粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值