JavaSE基础学习
Ambition小啊潇
这个作者很懒,什么都没留下…
展开
-
Java Socket
Java Socket 基本原理 Java Socket编程是基于应用服务与TCP/IP通信之间的一种抽象,将TCP/IP协议里面复杂的通信逻辑进行封装,对应用程序来讲,只要通过一组简单的API即可实现网络的链接。 进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远程主机的IP地址,远程进程的协议端口。 Socket连接的三个步骤 1.服务器监听:服务器端Socket不定位具体客户端Socket,而是出于等待连接的状态,实时监控网络状态(ServerSoc原创 2020-05-11 09:55:26 · 300 阅读 · 0 评论 -
Java8新特性
Java8新特性 一、接口内允许添加默认实现的方法 通过default关键字对接口中定义的抽象方法提供一个默认的实现,默认实现的方法可在接口实现类中直接调用,不强制实现。 可以非常方便地对之前的接口进行扩展,且已实现该接口的实现类不必做任何改动。 二、Lambda表达式 Lambda表达式本质上可以被认为是匿名内部类的简写形式。 (参数1:Type1,参数2:Type2…)-...原创 2020-05-06 11:14:15 · 149 阅读 · 0 评论 -
深浅拷贝
转载: 虽然是转载,这里大概说一下自己的理解: 无论是深拷贝还是浅拷贝,只要是想让对象具有拷贝的功能,当前类必须实现Cloneable接口(说明该类具有clone的性质,如果不实现会抛出CloneNotSupportedException异常),并在类中覆写Object类的clone()方法(并且设置访问限定符为public),该方法是需要在别的类中被调用的。 对于基本数据类型来说,无论...转载 2019-12-17 17:04:30 · 107 阅读 · 0 评论 -
面试题总结——JDK1.5介绍
面试题总结——泛型介绍 大概说一下泛型的相关 泛型的实质是参数化类型,也就是说所要操作的数据类型被指定为一个参数,并在编译期间就进行类型检测而不是和普通类型一样在运行时才进行检测,增加代码可读性,效率更高。多用在Java容器中。...原创 2019-11-21 20:07:26 · 158 阅读 · 0 评论 -
面试题总结——面向对象
面试题总结——面向对象 面向对象三大特性:封装,继承,多态 封装:将描述事物的数据和操作封装成一个类,被封装的数据和操作只有通过该类提供的公共方法才能被外界访问,保证了数据的安全性,封装隐藏了对象的属性和实施细节。 继承:可以将所有子类的共同属性或方法放在父类中,实现代码的复用,提高类之间的耦合性。 多态:同一个行为具有多个不同的表现形式,多态主要分为对象多态性和方法多态性...原创 2019-11-21 19:41:53 · 167 阅读 · 0 评论 -
Java基础——多态中的“编译看左,运行看右”
Java基础——多态中的“编译看左,运行看右” 对于多态中的静态属性或方法来讲,编译看左,运行也看左。无论右边是当前类还是当前类的子类,编译和运行期间执行的都是当前类中的方法。 对于多态中的非静态属性或非静态方法,编译看左,运行看右。也就是在编译期间看左边的类中有无该方法/属性,而实际在运行时执行的是右边类的方法/属性。如果编译期间没有在左边的类找到该非静态域,则会报编译错误。 举...原创 2019-11-14 18:41:16 · 1475 阅读 · 0 评论 -
面试题总结——对象序列化与反序列化
面试题总结——对象序列化与反序列化 对象序列化:将内存中保存的对象变为二进制数据流的形式进行传输,或者是将其保存在文本中。 简单来说: 序列化:把对象转换为字节序列的过程 反序列化:把字节序列恢复为对象的过程 序列化的用途: 1、把对象的字节序列永久的保存在硬盘上(放在一个文件中),要取出的时候再反序列化为对象即可。 2、网络上传输对象(对象->字节序...原创 2019-10-29 11:43:04 · 932 阅读 · 0 评论 -
Java基础——IO流
Java基础——IO流 IO核心就是五个类(File,InputStream,OutPutStream,Reader,Writer)+ 一个接口(Serializable) 一、File类 File类是java.io包中唯一一个与文件本身操作(创建、删除、取得信息)有关的程序类。 对文件做操作前,需要先创建一个File类: public File(String pathnam...原创 2019-10-29 10:31:43 · 122 阅读 · 0 评论 -
笔试题总结——Java创建(实例化)对象的5种方式
笔试题总结——Java创建对象的5种方式 1、使用new关键字(最常用) Object obj = new Object(); 2、使用反射的Class类的newInstance()创建 Object obj = Object.class.newInstance(); 3、使用反射的Constructor类的newInstance()创建 Object obj = Ob...原创 2019-10-12 10:35:00 · 253 阅读 · 0 评论 -
Java基础——Object类中equals()与toString()的覆写
Java基础——Object类中equals()与toString()的覆写 本篇文章只介绍equals()与toString()的覆写,其他方法(例如hashCode())在之后具体用到时会详细讲解。 先来看Java的万物之主(Object类),Object类是Java默认提供的类,是所有类的父类(可通过Object类实现参数统一化) 1、equals()的覆写,先上代码: pub...原创 2019-09-22 21:18:02 · 220 阅读 · 0 评论 -
Java基础——String类型与其他类型的相互转换
Java基础——String类型与其他类型的相互转换 1、字符与字符串的相互转换(多用于字符串的遍历) // 字符数组->String(构造方法) public String(char[] value) public String(char[] value,int offset,int count)->offset:开始位置,count:数量 // 字符串中某...原创 2019-09-22 20:32:57 · 886 阅读 · 0 评论 -
Java基础——this关键字与super关键字
Java基础——this关键字与super关键字原创 2019-09-21 23:08:55 · 404 阅读 · 0 评论 -
Java基础——对象多态性产生的"参数统一化"
Java基础——对象多态性产生的"参数统一化" Java中不仅方法具有多态性,对象也同样具有多态性** 方法多态性:指一个类实例的相同方法在不同情形下有不同的表现形式,主要操作包含重载与重写。 对象多态性:父类与子类对象之间的转换,只要包含向上转型与向下转型 具体有关重载与重写的详细内容,可参考,方法覆写与方法重载。有关对象多态性的介绍,可参考,向上转型和向下转型。 由于J...原创 2019-09-21 22:09:36 · 304 阅读 · 0 评论 -
Java基础——final关键字
Java基础——super,final关键字一、super关键字 1、super关键字用于方法 ①super用于构造方法 a)子类调用父类的无参构造方法,super可写可不写(默认生成) b)子类调用父类有参构造方法,super必须写(super(参数列表)) c)注意事项1:当子类继承了父类,而父类没有无参构造器(无论是默认生成还是自己手写),就...原创 2019-06-23 09:33:28 · 201 阅读 · 0 评论 -
Java基础——抽象类
Java基础——抽象类一、抽象类的定义与要求 1、抽象类:只是在普通类的基础上扩充了一些抽象方法而已(普通类的加强版) 2、抽象类:只声明而未实现的方法(没有方法体,{}也没有) 3、要求:所有的抽象方法必须使用abstract来定义,抽象方法所在的类必须使用abstract来定义,表示抽象类。(抽象方法必须在抽象类中,抽象类中不一定存在抽象方法)二、抽象类的使用原则 1、所有...原创 2019-06-24 09:19:00 · 264 阅读 · 0 评论 -
Java基础——对象多态性
Java基础——多态一、定义 多态:指一个类实例的相同方法在不同情形下有不同的表现形式二、多态的分类 多态有两种分类,向上转型(90%)和向下转型(1%) 1、向上转型:用于参数统一化(形参为父类的引用,实参为子类的对象,最终调用的方法还是看new后面的对象) 父类 父类引用 = new 子类对象(); 子类对象(new出来的是对象)给了父类引用(父类引用...原创 2019-06-24 12:53:59 · 155 阅读 · 0 评论 -
Java基础——异常处理常见问题解析
Java基础——异常处理一、异常的分类 1、 Error:描述JVM运行时的内部错误,如栈溢出,堆溢出… 2、 Exception:程序中普遍存在的,由于代码问题产生的错误 ①IOException:由于输入输出产生的异常,如在程序中打开了一个并不存在的文件 ②RuntimeException:发生在运行时的异常(编译不报错,运行会出错),如数组越界异常、类型转换异常、空...原创 2019-07-09 22:43:28 · 177 阅读 · 0 评论 -
Java基础——泛型之通配符与类型擦除
Java基础——泛型之通配符与类型擦除一、通配符? Java泛型的通配符有三种形式,但究其根本只有"?“这一种形式,其他两种形式都是由”?"衍生出来的。 1、?:可以接收任意类型——只能作用于方法上,不能修改值 表示参数可以接收任意类型的泛型类,只能取得类中数据,不能修改数据,因为类型不确定,无法设置确定类型。(只知道是个泛型,连具体是什么类都不知道,肯定不能修改set值) ...原创 2019-07-10 22:55:31 · 423 阅读 · 0 评论 -
Java基础——JDK1.8新特性之Lambda表达式
Java基础——JDK1.8新特性之Lambda表达式一、Lambda的由来 谈到Java的Lambda表达式,就不得不谈函数式编程,Java中要想实现函数式编程必须满足一个前提:接口必须只能有一个方法,如果存在两个及以上的方法,则无法使用函数式编程。二、@FunctionalInterface注解 如果现在某个接口就是为了函数式编程而生的,在定义时只能存在一个方法,因此有一个新的注解...原创 2019-07-10 23:17:22 · 121 阅读 · 0 评论 -
Java基础——多态与instanceof的逻辑关系
Java基础——多态与instanceof的逻辑关系 众所周知,在Java中,类型的向上转型是自动的,而向下转型是需要进行强制类型转换的,而instanceof正好用于判断能否进行向下转型(强制类型转换),若多态与instanceof概念还不是很清晰,请参考Java基础——多态与instanceof关键字的使用。举个栗子 //定义父类Person与子类Student class Pe...原创 2019-08-27 14:38:43 · 191 阅读 · 0 评论 -
Java基础——Java"多继承"的三种实现方式
Java基础——Java"多继承"的三种实现方式原创 2019-09-02 15:51:25 · 6288 阅读 · 1 评论 -
Java基础——接口
Java基础——接口一、接口优先原则 在一个操作既可以使用抽象类又可以使用接口的时候,优先考虑使用接口。二、接口相关定义 1、接口就是一个抽象方法与全局变量的集合(只有这两个——JDK8之前) 2、接口使用interface关键字定义 3、子类实现接口使用implements关键字,并且子类可以同时实现多个父接口(可以使用接口来实现多继承——和抽象类的最大区别) 4、命名规...原创 2019-06-26 10:36:23 · 199 阅读 · 0 评论