java学习
一颗仙橙的程序员之旅
C,java,大数据实践、大数据导论、大数据技术原理与应用,Mysql,JSP,Hadoop集群程序设计与开发,数据库应用开发,Web前端,JavaScript,计算机应用,网页设计,SQLServer,Linux,软件测试,软件工程与UML,易语言,Python,Unity3D,PS...
展开
-
这篇文章能让你快速提高对内部类的理解
内部类什么是内部类?简单点就是面向对象程序设计的概念。面向对象程序设计中,是可以在一个类的内部定义另外一个类,这种类统称为嵌套类,它有两种类型,即静态嵌套类和非静态嵌套类。静态嵌套类使用的频率很少,基本用不到,最重要的还是非静态嵌套类,也被称作为内部类(inner)。内部类是JAVA语言的主要附加部分。内部类几乎可以处于一个类内部任何位置,可以与实例变量处于同一级,或处于方法之内,甚至是一个表达...原创 2020-03-19 18:42:33 · 133 阅读 · 0 评论 -
一篇文章带你深入理解java反射机制
反射Reflection(反射)是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,也有称作“自省”。反射非常强大,它甚至能直接操作程序的私有属性。我们前面学习都有一个概念,private的只能类内部访问,外部是不行的,但这个规定被反射赤裸裸的打破了。反射就像一面镜子,它可以在运行时获取一个类的所有信息,可以获取到任何定义的信息(包括成员变量,成...原创 2020-03-19 16:20:33 · 243 阅读 · 0 评论 -
五分钟带你详细理解Java多线程
多线程 在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单位都是进程。 在未配置 OS 的系统中,程序的执行方式是顺序执行,即必须在一个程序执行完后,才允许另一个程序执行;在多道程序环境下,则允许多个程序并发执行。程序的这两种执行方式间有着显著的不同。也正是程序并发执行时的这种特征,才导致了在操作系统中引入进程的概念。 自从在 20 世纪 60 年代人们提出了进程的概...原创 2020-03-15 00:25:40 · 1883 阅读 · 2 评论 -
Java进阶技术:集合
集合Set接口:一个不包含重复元素的 collection。数据无序(因为set集合没有下标)。由于集合中的元素不可以重复。常用于给数据去重。特点:HashSet:底层是哈希表,包装了HashMap,相当于向HashSet中存入数据时,会把数据作为K,存入内部的HashMap中。当然K仍然不许重复。TreeSet:底层就是TreeMap,也是红黑树的形式,便于查找数据。Has...原创 2020-03-14 00:52:31 · 193 阅读 · 0 评论 -
Java进阶技术:泛型
泛型概念:public class LinkedListextends AbstractSequentialListimplements List, Deque, Cloneable, java.io.Serializable{}public interface Deque extends Queue {}public interface Queue extends Collect...原创 2020-03-13 21:27:08 · 144 阅读 · 0 评论 -
面试之Java的六大设计模式思想详解
1 单例模式单例模式可以说是大多数开发人员在实际中使用最多的,常见的Spring默认创建的bean就是单例模式的。单例模式有很多好处,比如可节约系统内存空间,控制资源的使用。其中单例模式最重要的是确保对象只有一个。简单来说,保证一个类在内存中的对象就一个。RunTime就是典型的单例设计,我们通过对RunTime类的分析,一窥究竟。源码剖析:/** * Every Java...原创 2020-03-13 01:41:34 · 242 阅读 · 0 评论 -
IO流之序列化和反序列化的详解
序列化 / 反序列化概述:序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。序列化:利用ObjectOutputStream,对象的信息,按固定格式转成一串字节值输出并持久保存到磁盘化。反序列化:利用ObjectInputS...原创 2020-03-10 16:57:07 · 220 阅读 · 0 评论 -
IO流的基础案例
文件复制public class Test4_Copy { public static void main(String[] args) throws Exception { // 1,创建读取文件和写出文件 File from = new File("D:\\teach\\a\\1.txt"); File t...原创 2020-03-10 16:26:57 · 135 阅读 · 0 评论 -
IO流之OutputStream详解
字节流写出OutputStream抽象类此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到某个接收器。 常用方法:>void close() > 关闭此输出流并释放与此流有关的所有系统资源。 > >void flush() > 刷新此输出流并强制写出所有缓冲的输出字节。 ...原创 2020-03-10 15:33:42 · 7372 阅读 · 0 评论 -
IO流之InputStream详解
1 IO BigDecimal/BigInteger概述 :BigDecimal:常用来解决精确的浮点数运算。BigInteger:常用来解决超大的整数运算。创建对象:BigDecimal.valueOf(2);常用方法: add(BigDecimal bd): 做加法运算substract(BigDecimal bd) : 做减法运算multiply(BigDe...原创 2020-03-10 15:20:58 · 1609 阅读 · 0 评论 -
包装引用类型和数据类型之间的转换详解
一、Stringa,特点: --String字符串类,用来表示"",String类被final修饰,也就是不可以被继承。 --String类底层维护了一个char[],而且是final的,也就是说数组一旦创建长度和值都不能被修改了,字符串就变成了一个常量。 --源码摘抄: --public final class String{} --private final char valu...原创 2020-03-10 12:29:50 · 154 阅读 · 0 评论 -
java知识总结(详细)
1、基础语法-- 数据类型:八大基本类型byte short int long float double char boolean / 引用类型-- 分支结构:if(判断条件1/true){满足条件的代码1...}else if(判断条件2/true){不满足条件的代码2...}-- 循环结构:for/while(先判断后执行)/do...while(循环体最少执行1次) -- for(循...原创 2020-03-10 01:36:23 · 102 阅读 · 0 评论 -
包装引用类型的概念和方法
1 Object1.1 概念:所有对象的顶级父类存在于java.lang包中,这个包不需要我们手动导包1.2 常用方法:toString() 默认返回 类名@地址 的格式,来展示对象的地址值,如:a00000.Student@a0834e7。如果想看属性值我们可以重写这个方法,重写后返回的就是把属性值拼接成一个字符串。如:Student [name=苏...原创 2020-03-09 22:36:02 · 174 阅读 · 0 评论 -
总结:类、接口、抽象类
1、类和类的关系:继承 extends / 单继承 / 单根继承-- 继承的意义:为了提高代码的复用性,减少了代码的编写提高开发效率。-- 方法重写的意义:在不修改父类源码的前提下,在子类中重写业务,从此使用的就是重写后的功能。-- 要求子类的方法声明和父类一样,只要改方法体。-- 有了继承有了重写就产生了多态,多态的意义:为了统一程序的调用标准,标准就是父类。-- 多态 也就是...原创 2020-03-09 21:27:14 · 197 阅读 · 0 评论 -
java---OOP之接口
1 接口1.1 概念:Java里面由于不允许多重继承,所以如果要实现多个类的功能,则可以通过实现多个接口来实现。Java接口和Java抽象类代表的就是抽象类型, 就是我们需要提出的抽象层的具体表现。OOP面向对象的编程,如果要提高程序的复用率,增加程序的可维护性,可扩展性,就必须是面向接口的编程,面向抽象的编程。正确地使用接口、抽象类这些太有用的抽象类型做为java结构层次上的顶层...原创 2020-03-09 21:22:22 · 193 阅读 · 0 评论 -
Java---OOP之多态
1 多态的成员使用1.1 特点:成员变量:使用的是父类的成员方法:由于存在重写现象所以使用的是子类的静态成员:随着对象而存在,谁调用的就返回谁的public class Test1_UseManyTai { public static void main(String[] args) { // 创建多态对象测试 Fu f = new Zi()...原创 2020-03-09 17:37:31 · 128 阅读 · 0 评论 -
java面向对象知识拓展
向上转型和向下转型:在JAVA中,继承是一个重要的特征,通过extends关键字,子类可以复用父类的功能,如果父类不能满足当前子类的需求,则子类可以重写父类中的方法来加以扩展。在应用中就存在着两种转型方式,分别是:向上转型和向下转型。比如:父类Parent,子类Child向上转型:父类的引用指向子类对象Parent p=new Child();说明:向上转型时,子类对象当成父类对象,只能...原创 2020-03-09 15:54:49 · 171 阅读 · 0 评论 -
构造方法
1.1 成员变量的使用public class Test1_UseExtends { public static void main(String[] args) { // 创建子类对象测试 Erzi z = new Erzi();// z.eat(); z.study(); }}//创建父类class Baba{ ...原创 2020-03-09 12:34:39 · 108 阅读 · 0 评论 -
Java代码块的详细讲解
1 、构造方法1.1 概念构造方法是一种特殊的方法,它是一个与类同名且返回值类型为同名类类型的方法。对象的创建就是通过构造方法来完成。其功能主要是完成对象的创建或者对象的初始化。当类实例化new一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载(方法名相同+参数列表不同)。1.2 形式 可以无参也可以有参修饰符 类名(参数列表){代码…… }构造方...原创 2020-03-07 01:55:16 · 251 阅读 · 0 评论 -
Arrays工具类
1、 数组工具类Arrays1.1 Arrays.toString(数组) 把数组里的数据,用逗号连接成一个字符串。【值1,值2】1.2 Arrays.sort(数组) 对数组排序,对于基本类型的数组使用优化后的快速排序算法,效率高。 对引用类型数组,使用优化后的合并排序算法。1.3 Arrays.copyOf(原数组,新的长度) 把数组复制成一个指定长度的...原创 2020-03-06 21:34:30 · 235 阅读 · 0 评论 -
学习java---面向对象(下)
知识回顾:1) 面向对象,面向过程,面向接口a) 老牌,传统,思考方式:面向过程,思考方式和日常我们考虑问题一样。遇到需求频繁修改时,设计就崩溃。因为用户他不是软件人员,他说不清一些潜在需求,导致做出来的东西和他理解是不同。软件返工,甚至软件失败。b) 面向对象是主流思考方式,它想的“多”,超出用户需求,从而提前做了些用户潜在需求中内容。所以当用户提出需求变更,新的需求时,其实我们提前做好...原创 2020-03-06 21:00:47 · 270 阅读 · 0 评论 -
学习java---面向对象(上)
知识回顾:1) 异常(业务异常,用户千奇百怪,有很多奇葩,不管代码怎么写的,他乱输入,对于这些特殊非法值,程序都应该能正常避过。)a) try,可能错误代码放入try中,尽量无法代码不要放在里面b) catch,捕获异常,如果try中代码出错,就会直接跳转到catch中执行,处理预先知道可能错误,进行异常处理,提升:“程序发生问题,请联系管理员”c) exception,获取异常信息:e....原创 2020-03-06 20:27:55 · 214 阅读 · 0 评论 -
学习java---判断语句的使用
知识回顾:1) 强调学习方法,it和其他知识不同的,数学,思维能力,抽象能力(难)语文,背。It是非常好学,工作22年,15年在软件企业中(初级、中级、高级、系统分析师、架构师、技术总监、后面走管理)知识都是应用,反复多敲多练。例如main,敲上上万变。2) 什么是装箱拆箱?a) 装箱,把基本类型变量转换包装类型(包装类型)Integer i = 10;(基本类型)明显=左边右边,不是一...原创 2020-03-06 20:18:17 · 327 阅读 · 0 评论 -
学习java---变量
一个好的开发人员,多思编织最重要编程思想,突破束缚,举一反三,去想想背后事情,扩散思维系统分析师(业务分析,系统设计)1) 怎么实现junit单元测试?a) Junit第三方开发工具类,只有jdk(jre)才能直接使用,必须导入jar(eclipse很好支持,需要时,它就可以直接导入import)b) 类中所需要的类戴上一个帽子,是一个注解@Test注意:单元测试执行一个类多个方法时,...原创 2020-03-06 19:35:33 · 210 阅读 · 0 评论