Java基础
好菜哦
不要多想,对得起这份工资就行。
展开
-
实现线程共享数据的方式
说明:这里以new Thread(Runnable target)的方式创建线程。希望读者首先了解静态代理以及线程的几种创建方式。思路:Thread类使用new Thread(Runnable target)的方式创建线程对象时,使用的是静态代理的模式,线程执行时,最终会使用target.run()方法,因此想要实现数据的共享,只要保证run方法中的数据是与其它线程共享即可,我们知道run方法是是无参的,因此只能将共享数据放在target对象中,比如作为成员变量,方便run方法调用。这样一来,保证targ原创 2020-09-27 17:11:36 · 1467 阅读 · 0 评论 -
I/O流
I/O概述I/O是Input/Output的缩写,表示输入输出。对于内存来说,从内存中取出数据写入到磁盘中的操作是输出,也就是写。从磁盘中读取数据到内存中是输入的操作,也就是读。I/O流根据操作数据的最小单位,分为字符流和字节流。又可以根据是否直接对文件资源进行读写操作,分为节点流和处理流。下面以java.io包为基础,学习I/O流的内容。1. 继承结构2.类的概述2.1 File类File类是对文件和目录的抽象。它可以用来表示一个文件或路径。I/O流操作目标就是系统中的文件。** *原创 2020-07-08 14:47:51 · 137 阅读 · 0 评论 -
基本数据类型及其包装类
主要内容:分析数值型自动拆装箱过程中的常量池问题。1. 基本数据类型及包装类型基本数据类型长度(单位:字节)取值范围包装类型byte1-2^7 – 2^7-1Byteshort2-2^15 – 2^15-1Shortint4-2^31 – 2^31-1Integerlong8-2^63 – 2^63-1Longfloat43.402823e+38 ~ 1.401298e-45Floatdouble原创 2020-07-06 21:58:47 · 162 阅读 · 0 评论 -
String类的常用方法及问题
1.String类特点:1.可以不使用new创建对象。2.String对象一旦创建,就不可以被修改。原因是底层被private final 修饰的字符数组value,final保证value不会指向堆中的其它对象,private保证字符数组的值不会被外部修改。注意:String类对象,不管调用什么方法,对象本身都不会改变,只是有时会返回一个新的字符串对象。1.1 常用方法创建String类对象:public static void main(String[] args) throws Unsup原创 2020-06-06 10:49:42 · 235 阅读 · 0 评论 -
Math类的常用方法
Math类的常用方法最近在刷LeetCode的时候,发现有很多和算术相关的题目,可以使用Math类处理,所以小结一下,加深印象。1.取近似值1.1四舍五入** int/long Math.round(float/double d);**(推荐使用)描述:如果入参是float,返回int类型,如果入参是double,返回long类型。public static void main(String[] args) { float f1 = 1.34f; double f2 = 1.5; d原创 2020-06-01 11:06:31 · 2579 阅读 · 0 评论 -
面向对象三大特性--封装的个人理解
封装问题1:什么是封装?通俗来讲,封装是指对事物进行包装,使其内部细节不可见,同时需要提供对外的访问途径,用于使用该事物。例如单片机的芯片,对芯片进行封装,可以保护芯片的内部电路,同时,芯片必须提供引脚,供外部电路进行访问、操作。类比到java中的封装,java语言中的封装针对的对象是类,对类的封装实际上是:1.私有化类的属性,使其不能被外部直接访问。2.对外提供公共的访问方法。问题2...原创 2019-06-25 17:21:31 · 200 阅读 · 0 评论 -
Dos窗口编译和运行java程序
编译编译做的事情就是检查代码是否符合语法,并生成.class(字节码)文件。操作:1.桌面新建文件夹,存放java源文件。2.在地址栏输入cmd,回车。(在文件夹地址栏输入cmd,DOS窗口会默认跳转到当前文件夹所在的目录下。)3.Dos窗口输入javac,鼠标左键将源文件拖到javac命令后,回车即可。运行操作:1.编译完成后,找到.class文件所在的文件夹,在地址栏输入cm...原创 2019-07-01 11:44:46 · 418 阅读 · 0 评论 -
List集合:针对不同实现类的效率测试
直接上代码:package com.collection;import java.util.ArrayList;import java.util.LinkedList;import java.util.List;import java.util.Stack;import java.util.Vector;/** * * @ClassName: ListTest02 * @...原创 2019-08-06 11:26:41 · 94 阅读 · 0 评论