自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 反射---

反射Reflection(反射)是java被视为动态语言的关键,反射机制允许程序正在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法​ Class c = Class.forName(“java.lang.Stringf”)加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透

2021-09-05 12:43:45 251

原创 注解---

注解注解:AnnotationAnnotation是从JDK5.0开始引入的新技术Annotation的作用:不是程序本身,可以对程序作出解释。(这一点和注释comment没什么区别)可以被其他程序(比如:编译器等)读取Annotation的格式:注解是以“@注释名”在代码中存在的,还可以添加一些参数值,​ 例如:@SuppressWarnings(value=“unchecked”).Annotation在哪里可以使用?可以附加在p

2021-09-05 12:43:05 120

原创 多线程03

死锁叙述:多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形。某一个同步块同时拥有"两个以上对象的锁"时,就可能会发生"死锁"的问题产生死锁的四个必要条件:互斥条件:一个资源每次只能被一个进程使用请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放不剥夺条件:进程已获得的资源,在未使用完之前,不能强行剥夺循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系以上列出了死锁

2021-08-11 11:53:36 130

原创 多线程02

多线程Lambda表达式概述:λ:希腊字母表排序第十一位的字母,英文名为Lambda避免匿名内部类定义过多其实质属于函数式编程的概念为什么要使用lambda表达式:避免匿名内部类定义过多可以让你的代码看起来很简洁去掉了一堆没有意义的代码,只留下核心的逻辑函数式接口的定义:任何接口,如果只包含唯一一个抽象的方法,那么它就是一个函数式接口。public interface Runnable{ public abstract void run();}对于函数式接

2021-08-11 11:52:44 107

原创 多线程01

//代理模式总结://真实对象 和 代理对象 都要实现同一个接口//代理对象要代理真实角色//好处:// 1、代理对象可以做很多真实对象做不了的事情// 2、真实对象专注做自己的事情public class StaticProxy {public static void main(String[] args) {You you = new You(); //你要结婚WeddingCompany wc = new WeddingCompany(you);wc.HappyMarry();}

2021-08-11 11:50:44 106

原创 网络编程

网络编程1.1概述计算机网络:计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程的目的:无线电台…传播交流数据想要到达这个效果需要什么:如何准确的定位网络上的一台主机 192.168.16.124:端口, 定位到这个计算机上的某个资源找到了这个主机,如何传输数据呢?javaweb: 网页编程 B/S网络编程: TCP/IP C/S1.

2021-08-11 11:49:51 74

原创 特殊操作流

特殊操作流4.1 操作标准输入输出流System类中有两个静态的成员变量:public static final InputStream in:标准输入流。通常该流对应于键盘输入或由主机环境或用户指定的另一个输入源public static final PrintStream out:标准输出流。通常该流对应于显示输出或由主机环境或用户指定的另一个输出目标自己实现键盘录入数据:InputStream is = System.in;InputStreamReader isr = ne

2021-08-11 11:49:07 143

原创 IO字符流

字符流由于字节流操作中文不是特别方便,所以Java就提供了字符流字符流 = 字节流 + 编码表用字节流复制文本文件时,文本文件也会有中文,但是没有问题。原因是最终底层操作会自动进行字节拼接成中文,如何识别是中文呢?汉字在存储的时候,无论选择哪种编码存储,第一个字节都是复数编码表常见编码表有ASCII码、UTF-8编码、GBK编码使用什么样的编码,就要使用对应的解码!IDEA默认的就是”UTF-8“3.3字符串中的编码解码问题编码:byte[] getBytes

2021-07-28 18:23:53 102

原创 IO字节流

字节流2.2字节流写数据字节流抽象基类InputStream :这个抽象类是表示字节输入流的所有类的超类OutputStream :这个抽象类是表示字节输出流所有类的超类子类名特点 :子类名称都是以其父类名作为子类名的后缀FileOutputStream:文件输出流用于将数据写入FileFileOutputStream(String name):创建文件输出流以指定的名称写入文件使用字节输出流写数据的步骤:创建字节输出流对象(调用系统功能创建了文件,创建字节输出流对象,让字节输出

2021-07-28 18:23:18 78

原创 File类

File1.1 File类概述和构造方法File:它是文件和目录路径名的抽象表示文件和目录是可以通过File封装成对象的对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的方法名说明File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的File实例File(String parent,String)从父路径名

2021-07-28 18:21:14 83

原创 Map集合

Map集合Map集合的概述:Map是一个接口,不能直接创建对象!Interface Map<k,V> K:键的类型; V:值的类型将键映射到值的对象;不能包含重复的键;每个键可以映射到最多一个值举例:学生的学号和姓名​ 001 张三​ 002 李四​ 003 王五创建Map集合的对象采用多态的方式具体的实现类HashMap

2021-07-28 18:20:43 115

原创 泛型的使用

泛型泛型简介:所谓泛型,就是允许在定义类、接口时通过 一个标识 表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)。为什么需要泛型?在泛型出现之前(JDK1.5之前),对于集合容器类,任何类型的数据都可以添加其中,类型不安全。此外在读取集合容器中的对象时,会因为数据类型问题而出现类型转换,一方面类型转换比较繁琐,另一方面可能会在运行时因为类型转换问题出现Cla

2021-07-28 18:20:08 110

原创 Collection集合、LinkedList集合

Collection集合Collection集合的使用步骤:创建集合对象 Collection<String> c = new ArrayList<>();添加元素c.add("hello");c.add("world");c.add("java");遍历集合3.1:通过集合对象获取迭代器对象Iterator<String> it = c.iterator();3.2:通过迭代器对象的hasNext()方法判断是否还有元素3.3:

2021-07-28 18:19:14 211

原创 System类、Date类、SimpleDateFormat类、Calendar类

System类System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。此方法适于计算时间差。System.out.println(System.currentTimeMillis()*1.0/1000/60/60/24/365 +"年");//可以用来表示1970年1月1日到现在距离多少年Date类Date():使用无参构造器创建的对象可以获取本地当前时间。Date da

2021-07-28 18:17:47 115

原创 Object类

Object类toString()方法toString方法默认打印的是对象的虚拟地址值。一般对于自定义的类,也想用toString方法比较两个对象的内容是否一致,这时就需要重写toString方法。可以用快捷键:Alt + insert 生成。一般是返回对象的属性等。Student s1 = new Student("张三",18);System.out.println(s1);运行结果:@49e4cb85 所以,如果想要输出的是对象的属性,就需要在原来的类里重写toStrin

2021-07-28 18:16:57 76

原创 ArrayList集合

ArrayList集合集合的特点:提供一种存储空间可变的存储模型,存储的数据容量可以发现改变集合类有很多,先学习一个ArrayList在使用ArrayList集合前得先导包:import java.util.ArrayList;ArrayList:可调整大小的数组实现:是一种特殊的数据类型,泛型。常见格式: ArrayList<集合的类型> array = new ArrayList<>();ArrayList的构造和添加:

2021-07-28 18:16:25 148

原创 异常、及异常处理

异常异常分为两大类:错误Error 和 异常Exception//异常的体系结构图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MmQ7dhcj-1626153420594)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20210710135956619.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5AqGnAdP-1626153420598)

2021-07-13 13:17:20 225

原创 抽象类、接口

抽象类关键字: abstract抽象类:本质还是个类, extends:单继承 (接口可以多继承)!//抽象方法,只有方法名字,没有方法的实现注意:不能new这个抽象类,只能考子类去实现它:约束!抽象类中可以写普通方法抽象方法必须在抽象类中// 抽象的抽象:约束!接口声明类的关键字是:class声明接口的关键字是:interface(继承)实现接口的关键字是:implements// interface 定义接口的关键字,接口都需要有实现类public

2021-07-13 13:16:48 66

原创 封装、继承、多态、重写、类型转换

封装属性私有化,get/set生成set()/get()方法快捷键:Art + Insert 笔记本:Fn + Art +Insertpackage www.opp.demo02;public class Student { //属性私有 private String name; private int id; private char sex; //提供一些可以操作这个属性的方法 public String getName() {

2021-07-13 13:16:17 125

原创 面向对象及构造器

面向对象类与对象的创建:package www.opp.demo01;//一个项目应该只存在一个main方法public class Application { public static void main(String[] args) { //类:抽象的,实例化 //类实例化后会返回一个自己的对象 Student Zhangsan = new Student(); Student Lisi = new Student

2021-07-12 11:06:19 66

原创 JAVA的数组及数据工具类

数组首先必须 声明 数组变量dataType[] arrayReVar; //首选方法 例如:int[] nums;或dataType arrayReVar[]; //效果相同,例如:int nums[];注:dataType是数组类型,arrayReVar是数组名输出的初始化方式Java语言使用 new 操作符来创建数组dataType arrayReVar[] = new dataType[arraySize];例如: //int num[] = new int[

2021-07-12 11:05:44 64

原创 JAVA的循环

循环continue用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着执行下一次是否执行循环的判定。// 在循环时遇到continue,直接跳回循环开始的地方break在循环中遇到break,直接强制跳出循环,不执行循环中剩余语句标签//求101-150之前的质数outer:for(int i=101;i<=150;i++){ for(j=2;j<i/2;j++){ if(i % j == 0){ continue

2021-07-12 11:05:02 54

原创 JAVA的Scanner类

Scanner对象java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入基本语法:Scanner s = new Scanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串在读取数据前我们一般需要用hasNext()与hasNextLine()判断是否还有输入的数据next()与nextLine()的比较next():一定要读取到有效字符后才可以结束输入对输入有效字符之前遇到的

2021-07-12 11:04:08 259

原创 JAVA的包机制

包机制为了更好的组织类,java提供了包机制,用于区别类名的命名空间。包语句的格式为:package pkg1.pkg2.pkg3;一般利用公司域名倒置作为包名,例如:com.zhang.xxx com.baidu.www为了能够使用某一个包的成员,我们需要在java程序中明确导入该包。使用"import"完成此功能。import package1.package2.package3;导入这个包下的所有类: .*...

2021-07-12 11:03:17 49

原创 JAVA的常见运算符

运算符自增,自减int a = 3;int b = a++; //执行完这行代码后,先给b赋值,a再自增//a = a + 1;//a = a + 1;int c = ++a; //执行完这行代码前,先自增,再给b赋值//输出结果:a = 5, b = 3, c = 5幂运算:2^3=8 (java中没有这种写法),这时候需要借助Math类来操作// 例如:double x = Math.pow(2,3);短路运算int c = 5;boolean d = (c<

2021-07-12 11:02:44 45

原创 Java的基础语法

基础语法整数拓展进制 二进制0b 十进制 八进制0 十六进制0xint i1=10;int i2=010; //八进制0int i3=0x10; //十六进制0x浮点数拓展银行业务怎么表示?钱BigDecimal 数学工具类float 、double 表示的数字是 有限、离散、接近但不等于最好完全避免用浮点数进行比较!!!字符拓展所有的字符本质还是数字。编码 Unicode表:0-65536 Excel (范围)\t : 制表符 \n

2021-07-12 11:01:49 47

原创 IDEA的安装与常用快捷键

安装IDEA选择完路径的下一步,选择对应的电脑的位数,本机64✔.java建议不安装C盘点击 Create New Project检查环境jdk有无异常最左默认选中java,然后Next创建一个项目名,选择文件路径,然后点击 finish -> ok创建一个新的项目后,右键src->Java Class快捷键psvm:public static void main(String[] args) { }sout: System.out.printl

2021-07-12 11:01:07 85

原创 用Java写 HelloWorld

HelloWorld随便新建一个文件夹,存放代码新建一个java文件文件后缀名为.javaHello.java编写代码public class Hello{ public static void main(String[] args){ System.out.print("Hello,World!!!"); }}编译javac java文件,会生成class文件运行class文件,java class文件[外链图片转存失

2021-07-12 10:57:24 312

原创 JDK的卸载与安装

卸载JDK删除java的安装目录删除JAVA_HOME删除path下关于java的目录在cmd 用 “java -version” 语句检查是否卸载干净安装JDK去Oracle官网下载JDK1.8,版本不要太新,新版本可能存在不稳定的现象。注意下载时候需要选择同意协议,而且需要注册 Oracle 账号下载对应电脑的版本记住安装路径配置环境变量右键我的电脑 =》属性 =》高级系统设置 =》环境变量 =》系统变量 =》新建变量名:JAVA_HOME——>变

2021-07-12 10:53:39 74

原创 常用的Dos命令

打开CMD的方式开始+系统+命令提示符Win键+R 输入cmd打开控制台常用的Dos命令#盘符切换#查看当前目录下的所有文件 dir#切换目录 cd #返回上一级 cd ..#清理屏幕 cls (clear screen)#退出终端 exit#查看电脑ip ipconfig#打开应用 calc 计算器 mspaint 画图 notepad 记事本 #ping 命令 ping www.baidu.com#文件操作 md 目录名 (创

2021-07-03 15:53:42 41

原创 Markdown学习

Markdown学习标题:二级标题三级标题字体Hello,world!Hello,world!Hello,world!Hello,world!引用拼搏百日,我要学java!分割线图片[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QWLSq4Aa-1625289480964)(C:\Users\ASUS\Desktop\QQ图片20200913182110.jpg)]超链接点击跳转到真不卡列表ABCABC

2021-07-03 13:19:23 45

空空如也

空空如也

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

TA关注的人

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