Java基础
文章平均质量分 71
public static void m
活到老,学到老
展开
-
线程组的概念
一,线程组和线程的结构:树形结构每个Thread必然存在于一个ThreadGroup中,Thread不能独立于ThreadGroup存在。执行main()方法线程的名字是main如果在new Thread时没有显式指定,那么默认将父线程(当前执行new Thread的线程)线程组设置为自己的线程组二,ThreadGroup类的使用更多线程组知识请前往3 线程组和线程优先级 · 深入浅出Java多线程...原创 2020-09-12 10:18:35 · 130 阅读 · 0 评论 -
【JAVA基础篇】基本数据类型及自动类型转换
一、8种基本数据类型以及占用内存空间大小boolean 1byte或4bytebyte 8bit/1bytechar 16bit/2byteshort 16bit/2bytefloat 32bit/4byteint 32bit/4bytelong 64bit/8bytedoub...原创 2019-07-01 17:15:34 · 449 阅读 · 0 评论 -
【Java基础篇】try catch finally语句包含return语句时的执行过程
网上有很多人探讨Java中异常捕获机制try…catch…finally块中的finally语句是不是一定会被执行?很多人都说不是,当然他们的回答是正确的,经过我试验,至少有两种情况下finally语句是不会被try语句没有被执行到,如在try语句之前就返回了,这样finally语句就不会执行,这也说明了finally语句被执行的必要而非充分条件是:相应的try语句一定被执行到。 在tr...原创 2019-06-27 11:20:13 · 286 阅读 · 0 评论 -
【JAVA基础篇】运算符
一、表达式表达式由运算符和操作数组成例如: 5num1num1+num2sum=num1+num2二、运算符分类算数运算符、赋值运算符、关系运算符、逻辑运算符、条件运算符、位运算符三、算数运算符四、赋值运算符格式:变量=表达式例如:int n=3;//将3赋值给变量n注意:赋值运算符是从右往左运算!赋值运算符的左边不能是常量!复合赋值运...原创 2019-06-30 10:41:25 · 304 阅读 · 0 评论 -
【JAVA基础篇】String类详解
昨天参加了一场机试,发现自己居然对String类的api不熟了,所以今天来总结一下(基于JDK1.8)。1、父类和实现的接口没有父类,或者说父类是Object接口:Serializable、Comparable<String>、CharSequence2、数据结构底层是一个字符数组,并且底层数组不能被其他类访问,从源码可以看出private final cha...原创 2019-08-10 14:23:24 · 308 阅读 · 0 评论 -
jdk8新特性
jdk8的新特性有lambda表达式 方法引用 函数式接口 默认方法 Stream API Date Time API Optional类 Nashorn, JavaScript 引擎 Base64一、lambda表达式lambda表达式的语法:(parameters) -> expression 或 (parameters) ->{ statements...原创 2019-08-20 20:56:33 · 299 阅读 · 1 评论 -
【Java基础篇】集合排序
所谓集合排序是指对集合内的元素进行排序。集合工具类Collections中提供了两种排序算法,分别是:Collections.sort(List list) Collections.sort(List list,Comparator c)Collections.sort(List list)这种方式需要对象实现Comparable接口,并重写compareTo()方法。impor...原创 2019-08-24 15:22:16 · 300 阅读 · 0 评论 -
【JAVA基础篇】彻底搞懂拆箱装箱
什么是装箱拆箱?Java有8种基本数据类型,并且为这8种类型提供了包装器类型。比如说int类型的包装器类型是Integer。装箱是指将基本数据类型转换成对应的包装器类型。拆箱是指将包装器类型转换基本数据类型。Integer i = 10; //自动装箱int n = i; //自动拆箱装箱拆箱是如何实现的在装箱的时候自动调用的是Integer的valueOf(int)...原创 2019-08-20 23:04:57 · 276 阅读 · 2 评论 -
【Java基础篇】你真的懂switch语句吗?
switch语句语法 switch (expression) { case value: //语句 break;//可选 //可以有任意个case语句 default://可选 //语句 }注意点switch的语句中表达式expression返回类型只能是byte、char、short、int和枚举类型,java1.7开始支持S...原创 2019-08-16 21:47:30 · 311 阅读 · 1 评论 -
【Java基础篇】Unicode、进制转换
一、unicode先说一下unicode是什么?最开始美国人搞出了ASCII这个东西,什么意思呢?首先一个字节,我们都知道是8个bit位,总共能表示256种状态,然后我们就把这256种状态每种状态都对应一个字符。这种对应关系就是ASCII。ASCII中一共定义了128个字符,例如:00110000,也就是48,对应字符'0'。对于英语来说,128个字符来编码是完全足够的。但是汉字有...原创 2019-08-17 09:57:39 · 1438 阅读 · 0 评论 -
【Java基础篇】你真的了解构造器吗?
构造器是方法名和类名相同,并且没有返回值的特殊方法,可以使用的关键字有public, protected & private,或者省略(表示default)public class Constructor { //构造方法 public Constructor(){ } //实例方法 public void Constructor(){ System.out.prin...原创 2019-08-22 22:37:59 · 162 阅读 · 0 评论 -
【JAVA基础篇】Socket编程
一、Socket的概念Socket是一种通讯机制,通常称为套接字。英文原意是插座,顾明思义,Socket像是一个多孔插座,可以提供多个端口的连接服务二、Java Socket编程示例2.1、基于TCP协议tcp协议是面向连接的,通常会有服务端和客户端,服务端和客户端先连接,然后传递消息。SendMsg:用于创建发送消息的线程import java.io.BufferedR...原创 2019-06-28 11:21:57 · 327 阅读 · 0 评论 -
【JAVA基础篇】枚举
/** * 一组相同类型的常量的集合 * @author cc * */public class EnumDemo { public static void main(String[] args) { //遍历 for(WorkDay workDay:WorkDay.values()){ System.out.println("序号:"+workDay.ordinal(...原创 2019-06-17 16:58:27 · 171 阅读 · 0 评论 -
【JAVA基础篇】抽象类和接口的区别
抽象类和接口是定义抽象概念的两种方式,正是由于抽象类和接口,才赋予了Java强大的面向对象的能力。在讨论他们的不同点之前,我们先来了解抽象类和接口。 抽象类 在面向对象的领域一切事物都是对象。对象都是通过类来描述的,但是反过来,并不是所有的类都是用来描述对象的。如果一个类中没有包含足够的信息来描绘一个具体的对象,那么这个类就是抽象类。比如说Animal,但是这个Animal具体长成什么样...原创 2019-05-24 13:48:36 · 232 阅读 · 0 评论 -
【JAVA基础篇】访问权限
所谓访问权限,指的是本类的成员变量、成员方法和内部类对其他类的可见性。四种访问权限Java一共有四种访问权限,按照权限由大到小分别为public、protected、default和private,如果省略了访问修饰符,那访问权限就是defualt。四种访问权限的含义和权限控制见下面表格:访问权限 含义 本类 本包的类 非本包子类 非本包非子类 pub...原创 2019-05-29 11:49:41 · 9355 阅读 · 0 评论 -
【JAVA基础篇】反射
一、反射的概念是指在运行过程中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用这个对象的所有方法和属性。这种动态获取信息和动态调用方法的功能称为JAVA的反射机制。二、反射的优缺点2.1、优点通过反射的概念我们已经知道反射的优点是:使程序能够访问到装载到JVM中的类的内部信息(成员变量和成员方法)2.2、缺点性能问题:反射是一种解释操作,通过...原创 2019-05-17 09:58:20 · 147 阅读 · 0 评论 -
【JAVA基础篇】注解
一、什么是注解?注解是元数据,所谓元数据就是描述数据的数据。在annotation诞生之前(jdk1.5诞生了注解),甚至之后,xml被广泛的由于描述元数据。但是后来,有一些应用开发工程师和架构师觉得它越来越难以维护了,他们觉得需要一种和代码紧耦合的东西,而不是xml配置和代码是松耦合的(某些情况下甚至是完全分离的),于是annotation诞生了。假如你想为应用设置很多的常量或参数,...原创 2019-06-28 17:01:20 · 134 阅读 · 0 评论 -
【JAVA基础篇】面对对象的特征
面对对象的3大特征是:封装、继承和多态 封装 封装就是将客观的事物封装成抽象的类,这个类包含这类事物共同的特性和行为,特性对应类的成员变量,行为对应类的成员方法。并且类可以让自己的成员变量和成员方法让可信的类或者对象访问,不可信的进行信息隐藏。 封装的优点 提高重用性 提高安全性 便于使用 封装的实现 成员变量使用private修饰,同时提供公共的set和get方法...原创 2019-05-23 13:27:28 · 197 阅读 · 0 评论 -
【JAVA基础篇】final、finally和finalize
final final表示最终的、不可被更改的,用来修饰类、成员方法和变量,通常处于两方面的考虑来使用它:特殊的设计和效率。 final类 一个类如果确信没有子类或者这个类的方法不允许修改,那么就把这个类定义成final类。final类的成员方法没有机会被覆盖,默认是final的 final方法 一个方法如果不允许子类覆盖,那么就把这个方法定义成final。使用fi...原创 2019-05-23 14:05:58 · 170 阅读 · 0 评论 -
【JAVA基础篇】==、equals和hashCode的区别和联系
==作用:比较两个操作数的关系,返回一个boolean类型的结果具体含义:如果两个操作数是基本数据类型,比较值是否相等。如果两个操作数是引用类型,那么比较的是内存地址是否相同。equalsObject类的实例方法,刚学Java的时候,很多人会把equals理解成比较内容是否相同,这种理解是不准确的。我们查看Object.equals的实现: public boole...原创 2019-05-28 16:16:58 · 1631 阅读 · 0 评论 -
【JAVA基础篇】内部类
定义在一个类内部的类称为内部类。内部类访问权限可以是protected、default或private,可以声明为abstract供其他内部类或外部类继承,可以声明为static、final,也可以实现特定的接口。外部类可以访问内部类的所有方法与属性,包括私有属性和方法。ps:这里只讨论成员内部类,不讨论局部内部类(包含匿名内部类),本文所有涉及的内部类均为成员内部类。创建实例pac...原创 2019-05-28 18:38:31 · 226 阅读 · 0 评论 -
【JAVA基础篇】对象初始化过程
我们都知道,创建对象是由 new关键字调用构造方法 返回类实例(实际上还可以通过反射来创建实例)。例如 : Person jack = new Person();这句话到底做了什么事情呢 ? 其实就是讲对象的初始化过程。1、 new 用到了Person.class,所以会先找到Person.class文件,并加载到内存中(用到类中的内容类就会被加载) 2、执行该对象的static代码...原创 2019-06-27 10:43:00 · 199 阅读 · 0 评论 -
【JAVA基础篇】多线程
学习Java的多线程知识之前,我们先来了解一下进程和线程的概念,以及他们之间的关系。进程基本概念进程是具有独立功能的程序在某个数据集合上的一次执行过程。特点进程是操作系统进行资源分配和调度的基本单位。 每个进程都有自己的地址空间,即进程空间。线程基本概念一个进程内部的一个执行单元,它是程序中的一个单一的顺序控制流程。特点自己不拥有系统资源,只拥有一点儿在运行...原创 2019-06-16 20:36:04 · 380 阅读 · 1 评论 -
【JAVA基础篇】IO流
一、流的概念“对语言设计人员来说,创建好的输入/输出系统是一项特别困难的任务。” ――《Think in Java》无论是系统、还是语言的设计中IO的设...原创 2019-06-28 17:05:04 · 465 阅读 · 0 评论 -
日期时间总结
今天总结一下日期时间如何处理,方便以后查看。 1 Oracle 1.1 日期格式参数及其含义说明 Oracle不区分大小写,所以下面参数大小写都可以D 一周中的星期几 DAY 天的名字,使用空格填充到9个字符 DD 月中的第几天 DDD 年中的第几天 DY 天的简写名 IW ISO标准的年中的第几周 IYYY ...原创 2018-11-10 16:29:57 · 461 阅读 · 0 评论