- 继承 this关键字的用途 引用隐式参数;调用该类其他的构造器。 super关键字的用途 调用超类的方法。调用超类的构造器。 多态 可以通过 is-a规则,它表明子类的每个对象也是超类的对象。例如,每个 经理都是雇员。因此,将Manager类设计为Employee类的子类是显而易见的,反之不然,并不是每一名雇员都是经理。 is-a 规则的另一种表述法是置... 继承 this关键字的用途 引用隐式参数;调用该类其他的构造器。 super关键字的用途 调用超类的方法。调用超类的构造器。 多态 可以通过 is-a规则,它表明子类的每个对象也是超类的对象。例如,每个 经理都是雇员。因此,将Manager类设计为Employee类的子类是显而易见的,反之不然,并不是每一名雇员都是经理。 is-a 规则的另一种表述法是置...
- 调试技巧 可以用下面的方法打印或记录任意变量的值 System.out.print("x="+x) 或者 Logger.getGlobal().info("x="+x)为每个类添加 main 方法,后期要删除单元测试日志代理是一个子类对象,他可以截获方法调用,并进行日志记录,然后调用超类中的方法,例如: 如果在调用Random类的nextDouble方法时出现... 调试技巧 可以用下面的方法打印或记录任意变量的值 System.out.print("x="+x) 或者 Logger.getGlobal().info("x="+x)为每个类添加 main 方法,后期要删除单元测试日志代理是一个子类对象,他可以截获方法调用,并进行日志记录,然后调用超类中的方法,例如: 如果在调用Random类的nextDouble方法时出现...
- 步骤一、下载安装包 a. 因为Java JDK区分32位和64位,所以安装之前需先判断一下我们操作系统为多少位·,命令如下: uname -a 解释:如果有x86_64就是64位的,没有就是32位的。后面是x686或x86_64则内核是64位的,i686或i386则内核是32位的。  ... 步骤一、下载安装包 a. 因为Java JDK区分32位和64位,所以安装之前需先判断一下我们操作系统为多少位·,命令如下: uname -a 解释:如果有x86_64就是64位的,没有就是32位的。后面是x686或x86_64则内核是64位的,i686或i386则内核是32位的。  ...
- 前言 上一篇我们介绍了在并发编程里面导致bug的三种问题,可见性问题,原子性问题,有序性问题。针对这三个问题,Java语言提供了Java内存模型(JMM)来解决这三种问题,主要是针对有序性和可见性问题。其本质上就是按需禁用缓存和编译优化。接下来我们就详细的阐述下。 Java内存模型介绍 Java 内存模型是一个很复杂的规范,本质上可以理解为:Java内存模型规范了... 前言 上一篇我们介绍了在并发编程里面导致bug的三种问题,可见性问题,原子性问题,有序性问题。针对这三个问题,Java语言提供了Java内存模型(JMM)来解决这三种问题,主要是针对有序性和可见性问题。其本质上就是按需禁用缓存和编译优化。接下来我们就详细的阐述下。 Java内存模型介绍 Java 内存模型是一个很复杂的规范,本质上可以理解为:Java内存模型规范了...
- 问题描述: 用import导入了一个MyEclipse项目,但里面的中文都出现了乱码。 解决方案: 方法一:将整个project设置编码UTF-8 【Window】——【Preferences】——【General】——【Workspace】——【Text file encoding】,将之前的【Default(GBK)】改为【Other:UTF-8】。 ... 问题描述: 用import导入了一个MyEclipse项目,但里面的中文都出现了乱码。 解决方案: 方法一:将整个project设置编码UTF-8 【Window】——【Preferences】——【General】——【Workspace】——【Text file encoding】,将之前的【Default(GBK)】改为【Other:UTF-8】。 ...
- 文章目录 前言一些基本的设置说明堆内存溢出Java栈内存异常方法区和运行时常量池溢出直接内存溢出内存泄露内存泄露的定义:解决办法 内存溢出的原因分析:线上内存溢出的处理方法总结 前言 上一篇我们介绍了JVM03–JVM垃圾收集机制的一些基本概念,这一篇介绍一下JVM中各种内存溢出(包括内存泄露)及其处理方法。 本文会按照JVM中内存划分来介绍各种内存... 文章目录 前言一些基本的设置说明堆内存溢出Java栈内存异常方法区和运行时常量池溢出直接内存溢出内存泄露内存泄露的定义:解决办法 内存溢出的原因分析:线上内存溢出的处理方法总结 前言 上一篇我们介绍了JVM03–JVM垃圾收集机制的一些基本概念,这一篇介绍一下JVM中各种内存溢出(包括内存泄露)及其处理方法。 本文会按照JVM中内存划分来介绍各种内存...
- 定义 装饰者模式也称为包装模式(Wrapper Pattern),属于结构型设计模式。 在不改变原类文件以及不使用继承的情况下,动态地将责任附加到对象中,从而实现动态扩展一个对象的功能。它通过创建一个包装对象,也就是装饰来包裹真实对象。 结构类图 角色 抽象组件(Component): 定义装饰方法的规范被装饰者(ConcreteComponent): Co... 定义 装饰者模式也称为包装模式(Wrapper Pattern),属于结构型设计模式。 在不改变原类文件以及不使用继承的情况下,动态地将责任附加到对象中,从而实现动态扩展一个对象的功能。它通过创建一个包装对象,也就是装饰来包裹真实对象。 结构类图 角色 抽象组件(Component): 定义装饰方法的规范被装饰者(ConcreteComponent): Co...
- 今天开始阅读Java集合源码了。重点掌握ArrayList,HashMap的源码 前置问题: HashMap的数据结构是什么?如何实现的。和HashTable,ConcurrentHashMap的区别ArrayList是如何实现的,ArrayList和LinkedList的区别?ArrayList如何实现扩容。 集合框架类图如下图所示: 接下来我们将按照这个... 今天开始阅读Java集合源码了。重点掌握ArrayList,HashMap的源码 前置问题: HashMap的数据结构是什么?如何实现的。和HashTable,ConcurrentHashMap的区别ArrayList是如何实现的,ArrayList和LinkedList的区别?ArrayList如何实现扩容。 集合框架类图如下图所示: 接下来我们将按照这个...
- ExecutorCompletionService类 当我们通过Executor提交一组并发执行的任务,并且希望在每一个任务完成后能立即得到结果,有两种方式可以采取: 方式一: 通过一个list来保存一组future,然后在循环中轮训这组future,直到每个future都已完成。如果我们不希望出现因为排在前面的任务阻塞导致后面先完成的任务的结果没有及时获取的情况,那么在... ExecutorCompletionService类 当我们通过Executor提交一组并发执行的任务,并且希望在每一个任务完成后能立即得到结果,有两种方式可以采取: 方式一: 通过一个list来保存一组future,然后在循环中轮训这组future,直到每个future都已完成。如果我们不希望出现因为排在前面的任务阻塞导致后面先完成的任务的结果没有及时获取的情况,那么在...
- 今天刚刚学了Java文件操作,跟着老师的思路,迫不及待的制造了这个小病毒。 用到的是一些小知识,很简单。 创建文件和文件夹,向文件中写入字节。 我已渐渐的爱上了编程!!! 下面附上完整代码: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; /**... 今天刚刚学了Java文件操作,跟着老师的思路,迫不及待的制造了这个小病毒。 用到的是一些小知识,很简单。 创建文件和文件夹,向文件中写入字节。 我已渐渐的爱上了编程!!! 下面附上完整代码: import java.io.File; import java.io.FileOutputStream; import java.io.IOException; /**...
- 做自己的类加载器 虚拟机的核心是通过类加载器来加载.class文件,然后进行相应的解析执行。那么我们可以自己做类加载器,手动加载需要的.class以进行解析执行,从而扩展虚拟机的功能。 以下内容摘自API文档: 应用程序需要实现 ClassLoader 的子类,以扩展 Java 虚拟机动态加载类的方式。 网络类加载器子类必须定义方法 findClass 和 ... 做自己的类加载器 虚拟机的核心是通过类加载器来加载.class文件,然后进行相应的解析执行。那么我们可以自己做类加载器,手动加载需要的.class以进行解析执行,从而扩展虚拟机的功能。 以下内容摘自API文档: 应用程序需要实现 ClassLoader 的子类,以扩展 Java 虚拟机动态加载类的方式。 网络类加载器子类必须定义方法 findClass 和 ...
- package cn.hncu.chx1; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.GridLayout; import ... package cn.hncu.chx1; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.GridLayout; import ...
- 刚刚学完Socket,迫不及待的做了这个网页邮箱抓取~~~ 自己以前做过微商,而且还掏钱买过抓取网络邮箱的软件~现在O(∩_∩)O哈哈~我自己做~当然啦,没有别人做得好~只是功能还是差不多啦~ 给一个带协议的网站~然后深入网页中查找邮箱~ 因为博主知识有限~线程池目前还没有学~导致无法控制线程~~~见谅~ 还有~就是没有设置停止按钮~也是因为没学线程池~水平不够... 刚刚学完Socket,迫不及待的做了这个网页邮箱抓取~~~ 自己以前做过微商,而且还掏钱买过抓取网络邮箱的软件~现在O(∩_∩)O哈哈~我自己做~当然啦,没有别人做得好~只是功能还是差不多啦~ 给一个带协议的网站~然后深入网页中查找邮箱~ 因为博主知识有限~线程池目前还没有学~导致无法控制线程~~~见谅~ 还有~就是没有设置停止按钮~也是因为没学线程池~水平不够...
- 在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。 但对应的字节数不同,一个汉字占两个字节。 定义一个方法,按照指定的字节数来取子串。 如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃。如果取四个字节就是“ab你”,取五个字节还是“ab你”。 上面给出的是在gbk编码下的截取字符串。 下面我... 在java中,字符串“abcd”与字符串“ab你好”的长度是一样,都是四个字符。 但对应的字节数不同,一个汉字占两个字节。 定义一个方法,按照指定的字节数来取子串。 如:对于“ab你好”,如果取三个字节,那么子串就是ab与“你”字的半个,那么半个就要舍弃。如果取四个字节就是“ab你”,取五个字节还是“ab你”。 上面给出的是在gbk编码下的截取字符串。 下面我...
- UDP ☆ UDP 将数据及源和目的封装成数据包中,不需要建立连接 每个数据报的大小在限制在64k内 因无连接,是不可靠协议 不需要建立连接,速度快 DatagramSocket和DatagramPacket类 ☆ TCP 建立连接,形成传输数据的通道。 在连接中进行大数据量传输 通过三次握手完成连接,是可靠协议 必须建立连接,效率会稍低 So... UDP ☆ UDP 将数据及源和目的封装成数据包中,不需要建立连接 每个数据报的大小在限制在64k内 因无连接,是不可靠协议 不需要建立连接,速度快 DatagramSocket和DatagramPacket类 ☆ TCP 建立连接,形成传输数据的通道。 在连接中进行大数据量传输 通过三次握手完成连接,是可靠协议 必须建立连接,效率会稍低 So...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
苏州工业园区“华为云杯”2025人工智能应用创新大赛赛中直播
2025/08/21 周四 16:00-17:00
Vz 华为云AIoT技术布道师
本期直播将与您一起探讨如何基于华为云IoT平台全场景云服务,结合AI、鸿蒙、大数据等技术,打造有创新性,有竞争力的方案和产品。
即将直播
热门标签