Java基础知识点(Java SE)
文章平均质量分 84
主要记录Java SE相关技术点
程序yang
如果您点了进来,那么请您一定要花几分钟看看置顶的几篇博文,相信我,你会有收获滴!
展开
-
线程池的使用:如何写出高效的多线程程序?
线程池是一种可以重复利用线程的技术,它可以减少线程的创建和销毁次数,从而提高程序的运行效率和响应速度。原创 2023-03-16 00:15:00 · 2445 阅读 · 31 评论 -
Java多线程编程基础:入门指南与实践技巧
Java是一种支持多线程编程的语言,通过多线程编程可以充分利用多核处理器,提高程序的性能和响应速度。在Java中,多线程编程是非常重要的,因为许多Java应用都需要使用多线程技术来提高程序的效率。原创 2023-03-15 14:03:27 · 358 阅读 · 1 评论 -
邂逅多线程:Java多线程编程
在Java中,多线程编程是非常常见和重要的一种编程方式。通过多线程编程,我们可以同时执行多个任务,从而提高程序的执行效率和并发性。原创 2023-03-15 13:30:57 · 701 阅读 · 17 评论 -
浅谈Java中空指针异常-java.lang.NullPointerException出现的几种原因及解决方案
空指针就是空引用,java空指针异常就是引用本身为空,却调用了方法,这个时候就会出现空指针异常。可以理解,成员变量和方法是属于对象的(除去静态),在对象中才存在相对应的成员变量和方法,然后通过对象去调用这些成员变量和方法。对于空指针来说,它不指向任何对象,也就没有所谓的成员变量和方法,这个时候用它去调用某些属性和方法,当然会出现空指针异常。原创 2022-10-08 14:22:55 · 4787 阅读 · 41 评论 -
关于Java获取时间的总结
在JAVA中有六个与时间有关的类:java.util.Date java.sql.Date java.sql.Time java.sql.Timestamp java.text.SimpleDateFormat java.util.Calendar 常用的也就是下面的几个:Date: getTime() 、setTime() DateFormat: getInstance()、getDateInstance()、ge.原创 2020-09-03 09:29:01 · 309 阅读 · 0 评论 -
使用Java优雅地获取当前时间是星期几
文章目录1.使用SimpleDateFormat2.使用Calendar类3.拓展注意:1.使用SimpleDateFormat实现代码:package com.gx.util;import java.text.SimpleDateFormat;import java.util.Date;public class Test { public static void main(String[] args) throws Exception { Date date = new Date()原创 2020-07-25 11:13:46 · 948 阅读 · 0 评论 -
String.format()格式化日期说明手册
文章目录1. 日期格式化 (中文环境下测试)2. 时间格式化 (中文环境下测试)3. 日期+时间 (中文环境下测试)1. 日期格式化 (中文环境下测试)转换符说明结果%tb指定语言环境下的月份简称五月%tB指定语言环境下的月份全称五月%ta指定语言环境下周几的简称星期日%tA指定语言环境下周几的全称星期日%ty2位数的年份18%tY4位数年份2018%tm月份05%te一个月中的某一天(1~31)13%原创 2020-07-25 10:14:42 · 450 阅读 · 0 评论 -
使用Java优雅地获取当前时间的几种方式
常见的java获取时间的方法是:首先引入java.util.Date和java.text.SimpleDateFormat包;然后创建一个SimpleDateFormat对象;最后调用format方法并传入new Date来格式化输出当前时间即可。除此之外还有其他一些获取方法,下面举例四种:原创 2020-07-25 09:31:59 · 896 阅读 · 0 评论 -
使用IO流优雅地实现文件的写入和读取
文件的写入:示例代码:package com.gx.demo;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;public class Test1 { /** * 保存写入内容到文件 * @param filepath 文件的位置 * @param conte...原创 2019-11-22 14:33:21 · 1908 阅读 · 2 评论 -
Java程序员掉发系列——深入探讨 Java 类加载器
Java 类加载器前言类加载器基本概念java.lang.ClassLoader类介绍类加载器的树状组织结构引导类加载器(bootstrap class loader)扩展类加载器(extensions class loader)系统类加载器(system class loader)类加载器的代理模式加载类的过程线程上下文类加载器Class.forName开发自己的类加载器文件系统类加载器网络类加...原创 2019-11-17 20:48:07 · 301 阅读 · 0 评论 -
想要成为一名优秀的Java程序员,这份文档必读
这篇文章提供了一些关于成为一名优秀的Java程序员的建议。需要掌握Java编程语言本身,同时,编写高质量的代码也是非常重要的。此外,阅读和理解源代码、参与开源项目等也是提高技能的好方法。Java程序员要与其他人合作,不断学习和探索新技术,以保持自己的竞争力。原创 2019-11-08 08:17:46 · 8195 阅读 · 27 评论 -
Java程序员掉发系列——程序员必须认识的英文单词(汇总)
程序员必须懂的英语单词,做程序员这行实在是离不开英语,需要懂的英语单词有很多。下面是博主整理的程序员必须懂的英语单词,以供大家学习参考。原创 2019-11-07 10:07:17 · 9286 阅读 · 35 评论 -
Java中的23种设计模式,你get到了吗?
Java中23种设计模式详解1、抽象工厂模式(Abstract Factory):2、适配器模式(Adapter):3、桥梁模式(Bridge):4、建造模式(Builder):5、责任链模式(Chain of Responsibility):6、命令模式(Command):7、合成模式(Composite):8、装饰模式(Decorator):9、门面模式(Facade):10、工厂方法(Fac...原创 2019-11-07 08:25:25 · 2188 阅读 · 2 评论 -
Java标识符、关键字和注释
一、标识符的认识:Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。关于 Java 标识符,有以下几点需要注意:1、 所有的标识符都应该以字母(A~Z 或者 a~z),美元符( $ )、或者下划线( _ )开始;2、 数字不可以开头,首字符之后可以包含数字;3、首字符之后可以是字母(A~Z 或者 a~z),美元符( $ )、下划线( _ )或数字的任何字符组合;...原创 2019-05-16 17:36:50 · 413 阅读 · 0 评论 -
Java的基本数据类型
什么叫数据类型?数据类型简单的说就是对数据的分类,对数据各自的特点进行类别的划分,划分的每种数据类型都具有区别于其它类型的特征,每一类数据都有相应的特点和操作功能。例如数字类型的就能够进行加减乘除的操作。在现实生活中,我们通常会对信息进行分类,从而使得我们能很容易的判断某个数据是表示一个百分数还是一个日期,我们通常是通过判断数字是否带”%”,或者是否是一个我们熟悉的”日期格式”。类似的在程序...原创 2019-05-16 17:41:04 · 1656 阅读 · 0 评论 -
Java的简介及基础知识拓展
1.1、Java的认识Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。Java分为三个体系:JavaSE(J2SE):(Java2 Platform Standard Edition,java平台标准版)JavaEE(J2EE): (Java 2...原创 2019-05-17 20:01:55 · 538 阅读 · 0 评论 -
Java运算符介绍
Java运算符分成以下几组: 算术运算符、关系运算符、逻辑运算符、赋值运算符、其他运算符。一、算术运算符:操作符描述+加法 相加运算符两侧的值- 减法 左操作数减去右操作数*乘法 相乘操作符两侧的值/除法 左操作数除以右操作数%取余 左操作数除以右操作数的余数++自增: 操作数的值增加1- -自减: 操...原创 2019-05-17 21:15:08 · 852 阅读 · 0 评论 -
Java包装类和数据类型转换
基本数据类型的包装类Java每个基本类型在java.lang包中都有一个相应的包装类包装类有何作用提供了一系列实用的方法集合不允许存放基本数据类型数据,存放数字时,要用包装类型这八种包装类所继承的父类不全都相同。1)Integer,Byte,Float,Double,Short,Long都属于Number类的子类,Number类本身提供了一系列的返回以上六种基本数据类型的操作。2...原创 2019-05-27 21:35:36 · 806 阅读 · 0 评论 -
Java函数的特殊情况和细节
首先来了解函数的定义:什么是函数?函数就是定义在类中的具有特定功能的一段独立小程序。函数也称为方法定义函数的格式:定义函数的特殊情况:功能没有具体返回值:这时return的后面直接用分号结束。返回值类型怎么体现呢?因为没有具体值,所以不可以写具体的数据类型。在java中只能用一个关键字来表示这种情况。关键字是:void.总结:没有具体返回值时,返回值类型用void来表示。注意...原创 2019-05-27 21:47:32 · 354 阅读 · 0 评论 -
Java之web项目中下拉框的封装
//第一步:封装公共的vopackage com.gx.vo;public class DropDownFrame { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public St...原创 2019-05-30 19:54:59 · 2624 阅读 · 3 评论 -
Java面向对象之Java中的类和对象
1:面向对象的概念理解:a:面向对象是相对面向过程而言;b:面向对象和面向过程都是一种思想;c:面向过程——强调的是功能行为;d:面向对象——将功能封装进对象,强调具备了功能的对象;e:面向对象是基于面向过程的。三个特征:封装(encapsulation),继承(inheritance),多态(polymorphism)。开发:其实就是找对象,建立对象,使用对象。维护对象的关系。...原创 2019-06-05 20:51:59 · 321 阅读 · 0 评论 -
Java面向对象之Java的重载和重写
重载的定义是:在一个类中,如果出现了两个或者两个以上的同名函数,只要它们的参数的个数,或者参数的类型不同,即可称之为该函数重载了。如何区分重载:当函数同名时,只看参数列表。和返回值类型没关系。(1) 构造器的重载构造器的重载;形参列表不同。public class Person { String name; int age; //构造器的重载:形参列表不同 public Pers...原创 2019-06-05 21:09:18 · 283 阅读 · 0 评论 -
Java面向对象之Java的封装和继承
一:在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。封装的优点:良好的封装能够减少耦合。类内部的结构可以自由修改。可以对成员变量进...原创 2019-06-05 22:18:33 · 362 阅读 · 0 评论 -
Java面向对象之super、this和初始化块
一、super 与 this 关键字super关键字:我们可以通过super关键字来实现对父类成员的访问,用来引用当前对象的父类。this关键字:指向自己的引用。(代表对象。就是所在函数所属对象的引用。)this到底代表什么呢?哪个对象调用了this所在的函数,this就代表哪个对象,就是哪个对象的引用。开发时,什么时候使用this呢?在定义功能时,如果该功能内部使用到了调用该功能的对象...原创 2019-06-16 16:37:11 · 533 阅读 · 0 评论 -
Java面向对象之Java单例模式
适用场景:1、 需要生成唯一序列的环境;2、 需要频繁实例化然后销毁的对象;3、 创建对象时耗时过多或者耗资源过多,但又经常用到的对象;4、 方便资源相互通信的环境。Java 单例模式有五种实现方式:一、 饿汉式:特点:线程安全,调用效率高,但是不能延时加载。示例代码:public class SingletonOne { //第2步,用一个私有的静态变量来存自身 //实例...原创 2019-06-16 16:58:14 · 319 阅读 · 0 评论 -
Java面向对象之Java修饰符
在Java中主要有四个访问控制符:分为如下:注意:在不写访问控制符的情况下,就是friendly(默认)修饰符;类修饰符的作用范围如下图:1、类修饰符:public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。 friendly,默认的修饰符,只有在相同包中的对象才能使用这样的类。abstract,将一个类声明为抽象类,没有实现的方法,需要子类提...原创 2019-06-25 19:42:14 · 316 阅读 · 0 评论 -
Java面向对象之Java抽象类和接口
一:抽象类的描述及介绍:在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象, 这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法、初始化块和构造方法和普通类一样。 由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。1、 抽象方法 抽象方法只包含一个方...原创 2019-06-25 19:59:01 · 284 阅读 · 0 评论 -
Java的集合之Map接口
Map接口中键和值一一映射,可以通过键来获取值。给定一个键和一个值,你可以将该值存储在一个Map对象之后,你可以通过键来访问对应的值。当访问的值不存在的时候,方法就会抛出一个NoSuchElementException异常。当对象的类型和Map里元素类型不兼容的时候,就会抛出一个 ClassCastException异常。当在不允许使用Null对象的Map中使用Null对象,会抛出一个 NullP...原创 2019-07-07 08:37:49 · 281 阅读 · 0 评论 -
Java的集合之Collection接口
为什么出现集合类?面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就要对对象进行存储,集合就是存储对象最常用的一种方式。数组和集合类同是容器,有何不同?数组虽然也可以存储对象,但长度是固定的;集合长度是可变的。数组中可以存储任意数据类型,集合只能存储对象。集合类的特点:集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。Java集合类是一种特别有用...原创 2019-07-07 08:39:09 · 332 阅读 · 0 评论 -
Java的集合之Comparable和Comparator
一、Comparable简介Comparable是排序接口。若一个类实现了Comparable接口,就意味着该类支持排序。实现了Comparable接口的类的对象的列表或数组可以通过Collections.sort或 Arrays.sort进行自动排序。 此外,实现此接口的对象可以用作有序映射中的键或有序集合中的集合,无需指定比较器。此接口只有一个方法compare,比较此对象与指定对象的顺序,...原创 2019-07-16 17:35:30 · 287 阅读 · 0 评论 -
Java的集合工具类及总结
Java提供了一个操作Set、List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序、查询和修改等操作,还提供了对集合对象实现同步控制等方法。这个类不需要创建对象,内部提供的都是静态方法。一、排序操作示例代码:import java.util.ArrayList;import java.util.Collections;import java...原创 2019-07-17 17:30:40 · 900 阅读 · 0 评论 -
Java的常用类之String类
String就是C#、C++、java等编程语言中的字符串,所谓字符串,就是一连串的字符;用双引号引起来的几个字符,如"Abc",“星期”。特别注意:String类是不可变(final)的,对String类的任何改变,都是返回一个新的String类对象。这样的话把String类的引用传递给一个方法,该方法对String的任何改变,对原引用指向的对象没有任何影响,这一点和基本数据类型相似.St...原创 2019-07-25 08:29:15 · 536 阅读 · 0 评论 -
Java常用类之Math、Random和UUID
Java提供了Math工具类来完成复杂的运算,Math类是一个工具类,构造器被private的,无法创建Math类的对象;Math类中的所有方法都是静态方法(类方法),可以直接通过类名来调用它们。Math类还提供了两个类变量:PI(圆周率)和E(自然对数的底数)。示例代码:public class MathDemo { public static void main(String[] ar...原创 2019-07-25 11:22:58 · 641 阅读 · 1 评论 -
Java常用类之Date和Calendar
Java提供了Date类来处理日期、时间(此处的Date是指java.util包下的Date类,而不是java.sql包下的Date类),Date对象既包含日期,也包含时间。Date类从JDK1.0起就开始存在了,因为它历史悠久,所以它的大部分构造器、方法都已经过时,不再推荐使用了。构造器:Java.util.Date的构造器还剩下两个构造器,其他都已经过时(@Deprecated注解,表示已...原创 2019-08-06 08:07:34 · 369 阅读 · 0 评论 -
Java的异常处理
1、异常:异常:就是不正常,是指程序在运行时出现的不正常情况。其实就是程序中出现的问题。这个问题按照面向对象思想进行描述,并封装成了对象。因为问题的产生有产生的原因、有问题的名称、有问题的描述等多个属性信息存在。当出现多属性信息最方便的方式就是将这些信息进行封装。异常就是 java 按照面向对象的思想将问题进行对象封装。这样就方便于操作问题以及处理问题。出现的问题有很多种,比如角标越界,空指针...原创 2019-08-06 08:22:05 · 159 阅读 · 0 评论 -
Java的异常分类
Java的异常被分为两大类:Checked异常和Runtime异常(运行时异常)。编译时被检查异常:(Checked异常)在程序中必须使用try…catch处理;编译时不被检测的异常:(Runtime异常)可以不使用try…catch处理,但一旦出现异常就将由JVM处理。1、异常的分类之 Runtime 异常(所有的RuntimeException类及其子类的实例)RuntimeExcep...原创 2019-08-15 17:43:29 · 969 阅读 · 0 评论 -
Java类加载机制
一、类加载器的概述:1、定义:简单说,类加载器就是加载类的工具。当出现一个类,用到此类的时候,Java 虚拟机首先将类字节码加载进内存,并对数据进行校验、解析和初始化,最终形成jvm可以直 接使用的java类型的过程。通常字节码的原始信息放在硬盘上的 classpath 指定的目录下。2、加载:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区中 的运行时数据结构,在堆中生成...原创 2019-08-17 09:24:19 · 210 阅读 · 0 评论 -
MVC框架的描述
Model:模型层;View:视图层;Controller:控制层MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型...原创 2019-08-21 10:25:36 · 800 阅读 · 0 评论 -
Java的反射机制(1)
1、什么是反射机制?在运行状态中,对于任意一个类,都能够获取到这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的方法和属性),这种动态获取的信息以及动态调用对象的方法的功能就称为java语言的反射机制。简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在 java 中,只要给定类的名字,那么就可以通过反射机制来获得类的所有信息。Class类常用类:链...原创 2019-09-05 09:31:21 · 174 阅读 · 0 评论 -
Java反射之Class常用类
修饰符返回值类型方法(形参)说明staticClassforName(String className)返回与带有给定字符串名的类或接口相关联的 Class 对象。staticClassforName(String name, boolean initialize, ClassLoader loader)使用给定的类加载器,返回与带有给定字符串名的类或接口...原创 2019-09-05 09:49:54 · 542 阅读 · 0 评论