自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 复习篇-Bigdecimal

BigDecimal作用:用于精确的计算一.构造方法方法名 说明BigDecimal(double val) 参数为doubleBigDecimal(String val) 参数为Stringpublic BigDecimal add(另一个BigDecimal对象) 加法public BigDecimal subtract (另一个BigDecimal对象) 减法public BigDecimal multiply (另一个BigDecimal对象) 乘法public BigDecimal divide

2022-07-13 17:33:32 197 1

原创 GUI拼图游戏

GUI练手拼图游戏思路:1、分析窗口所需要的组件2、按一定的顺序将组件填入窗口中 (注意要用Jpanel)所用类:JFrame, JLabel,JPanel,JButton3、利用二维数组思想4、给按钮创建事件5、逐步实现其功能用构造方法来测试...

2022-06-20 20:10:10 281

原创 网络编程Socket

网络编程主要是客户端与服务端的交互;ip地址:网络上的唯一标识ip的组成:32位,由4个8位二进制组成。协议:为了让网络不同计算机之间能够相互通信而建立的规则,标准,约定一、重点:socket(套接字)(1)概念:基于TCP协议的网络通信,可以提供双向安全连接的网络通信socket需要借助数据流(字节流)来完成数据的传递工作。(2)发送数据OutputStream,接收数据InputStream 底层还是IO流二、socket模板1、客户端建立连接/服务端准备服务(ip + 端口)2、通过Socket生成I

2022-06-10 08:50:58 573

原创 数据安全问题

当多个线程并发访问同一个资源的时候(对象、方法、代码块),经常会出现不安全的现象。那么如何解决线程安全问题?加锁:可以保证多个线程串行执行,即不要相互争夺抢占资源通俗的理解:有一个卫生间,a和b两个人去上卫生间。如果a正在使用,则加一把锁,表示正在使 用。synchronized:给共享资源加锁一、加锁的形式1、给方法加锁语法:public synchornized 返回值 方法名(){....}2、给代码块加锁语法:synchronized(任意对象){}3、解锁:解锁的时机是以下任意一个条件(1)正常解

2022-06-09 10:17:51 88

原创 Thread常见的API

回顾:在日常开发中我们常用实现Runnable接口,但是在Runnable接口中只有run方法,所以在启动线程的时候我们必须将Runnable对象转换成Thread类的对象,从而可以使用.start()方法来启动线程; Thread th1=new Thread(Runnable对象,线程名字);接下来学习一下线程常见的API一、设置线程的优先级 .setpriority()注意:优先级只是一个建议,但不能百分百保证th1.setpriority(10); //1-10th2.setpriority(2);

2022-06-06 09:01:43 242

原创 创建线程Thread的两种方式

一、理解进程与线程进程:应用程序的执行实例;例如 微信,qq ,进程有对应的内存空间 和 系统资源线程:将进程可以进一步细分为线程;CPU调度和分派的最小单位在Java中多线程前提是:研究的单核CPU**********************宏观并行,微观串行****************************单核CPU中不存在真正的并行概念,多个线程实际是在交替的占用CPU,并不是真的并行执行二、多线程的好处一般来讲,多线程可以充分利用CPU资源,提高效率注意:多线程并不是越多越好,因为每开启1个线

2022-06-05 09:33:35 388

原创 reflect动态加载类名和方法

原理:通过反射动态读取类名以及类中的方法,其实就是通过读取.txt的文件从而动态记载类名和方法1.首先先创建一个.txt的文件内容为2. 读取文件用Propertys 将文件中的类名读取出来Properties prop=new Properties();//创建prop对象3.通过load()方法,将文件加载进来prop.load(new FileReader("class.txt"));4.通过getProperty()获取类名prop.getProperty("classname");5.通过getP

2022-06-04 17:48:12 113

原创 reflect操作对象及方法

这篇文章主要是写一下关于如何用reflect创建操作对象,以及操作各种方法。一、获取反射对象(1)获取反射入口Class<?> preClass=Class.forName("reflect.People");(2)获取反射对象并转换成你自己所需要的People p1=(People)pre.newInstance();//这里p1就是获取的对象(3)设置对象的属性p1.setName("张三");p1.setId(23);(4)总代码展示注意:in

2022-05-25 10:46:42 321

原创 反射reflect简述以及获取类和方法等

一、定义反射:反射机制实在【运行状态】中:对于任意一个类,都能够知道这个类的多有属性和方法;对于任意一个对象,都能够调用他的任意一个方法和属性;二、反射提供的功能在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法生成动态代理三、获取反射对象(入口)1、Class.forName(包名+类名);Class<?> perClass=Class.forName(r

2022-05-25 09:24:36 360

原创 用字符流文件复制Reader/Writer

总的来说字符流的复制与字节流大同小异流程 文件——>内存——>文件一、文件到内存(1)创建输入流管道Reader reader = new Reader("d:/abc.txt");(2)创建输出流管道Writer writer= new Writer("d:xyz.txt");(3)在内存中创建数组来接收数据字符流char[]注意:1个字符等于8个字节Char[] buf=new char[4];(4)创建可变字符串用来接收拼接的数据Stri

2022-05-23 19:41:08 145

原创 用字节流复制文件InputStream/OutputStream

一、步骤将文件 先创建输入流 输出到内存 在内存中创建内存数组读取 .txt——>内存然后在内存数组中复制文件内容,通过创建输出流管道,从内存中输出 内存——>.txt二、//创建输入流,输出流InputStream in= new FileInputStream("d:/abc.txt');OutputStream out = new FileOutputStream("d:/xyz.txt");//创界字节数组,因为是字节流,所以创建byte[]...

2022-05-23 10:17:34 1315

原创 集合框架Collectin与Map

一、总述集合框架就是用来存储数据的容器,集合框架就是为了表示和操作集合而贵的第一种统一的标准的体系结构。二、集合与数组的区别1、数组是固定的长度;集合是可变的长度;2、数组可以存储基本数据类型,也可以储存引用数据尅性;集合只能存储引用数据类型。3、数组存储的元素必须是同一个数据类型;集合存储的对象可以是不同的数据类型(这里要注意集合在没有泛型约束下);三、树形图List:存储的数据不唯一、有序对象Set:存储数据是唯一、无序的对象注意:这一的唯一指的是不能重复 ,

2022-05-21 17:31:46 107

原创 包装类总结

一、了解包装类(1)在java5中增添了两个新特性,自动装箱和拆箱,因为基本类型的广泛使用,同时Java又是面向对象的编程语言,所以提供了包装类。(2)基本数据类型包括:byte、short、int、long、float、double、char、boolean对应的包装类为:Byte、Short、Intger、Float、Double、Character、Boolean。二、使用包装类的原因java是面向对象的语言,很多类和方法中的参数都需使用对象(例如集合),但基本数据类型却不是面

2022-05-21 16:38:27 491

原创 泛型的小知识

一、泛型定义:泛型,即“参数化类型”。通俗解释就是,将原来的级具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。泛型的本质就是为了参数化类型,在不断创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。意思就是在泛型的使用过程中,操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中,分别称为泛型类、泛型接口、泛型方法。二、语法//标准写法List<Strin

2022-05-21 15:25:58 82

原创 StringSub()案例使用

//统计HelloWorld中L的个数public class StringSub{//1、肯定要创建一个方法test来解决问题呀这里的参数input就是我要把HelloWorld放进方法去来统计它,world就是我要同统计那个字母public static int test(String input,String world){//2、因为我传入的字符串所以我需用创建数组str来接收字符串的长度String[] st...

2022-05-19 20:28:36 966

原创 String与StringBuffer相互转换

String与StringBuffer相互独立可以相互转换StringBuffer相当于String的增强版最大的作用就是节省内存空间!(一)String——>StringBufferString str1="abc";StringBuffer str2=new StringBuffer(Str1);(2)StringBuffer——>StringStringBuffer str1=new StringBuffer("abc");//用toString()方法来转

2022-05-19 20:09:05 2254

原创 IO流定义与分类

首先流是FIFO一种的数据结构,相当于File->内存,内存->File。分类及创建流的方法(一)按照流向分类(1)输入流 java.io.InputStream//1.先创建输入流管道inInputStream in= new FileInputStream("d://abc.txt");//2.再输入内存之前需要在内存中创建缓存数组,需要在数组中读取内容byte[] buf=new byte[4];//3.读取文件内容,调用.read()方法i...

2022-05-16 08:54:15 128

原创 static静态代码块

静态代码块,第一次执行,永远执行一次,初始化每次次执行无参构造方法之前执行public class TestStatic { static{ System.out.println("静态代码块");//静态代码块,第一次执行,永远执行一次,初始化 } { System.out.println("普通代码块");//没次执行无参构造方法之前执行 } //构造方法与类名相同,无返回值,用来初始...

2022-05-14 17:28:08 130

原创 StringBuffer理解与常用功能 (与String区别)

通俗来说StringBuffer相当于String的增强版,最大的作用就是:节省内存空间String与StringBuffer: String类是字符串常量,是不可改的常量。而StringBuffer是字符串变量,他的对象是可以扩充修改的!————StringBuffer的功能很是强大——(1)初始化StringBuffer sb=new StringBuffer("java");(2)字符串拼接 public StringBuffer append(String str...

2022-05-14 17:21:09 461 1

空空如也

空空如也

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

TA关注的人

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