Java
fay仙女
这个作者很懒,什么都没留下…
展开
-
JAVA 知识点总结(一)
易混淆知识点积累:1、重载与覆写 重载:同一个类中方法名相同,参数类型和个数都不相同;(参数个数升序或降序) 覆写:extends继承某一个类之后,方法名,参数类型和个数都相同。(严格的访问权限)2、抽象类与接口 抽象类:抽象方法和普通类,拥有各种权限,extends继承父类,一对多接口,一对一抽象类;(abstruct) 接口:抽象方法和全局变量,pu...原创 2018-07-30 13:09:15 · 132 阅读 · 0 评论 -
Java SE 摘要(关键字)
JavaSE—-基本语法、数据类型、操作符等:int、long、Integer、Long、if、else、for、while—-面向对象:class(类)、Object(对象)、instance(实例)、state(状态)、behavior(行为)、field、method、new、可见性(访问控制)、attribute、property、package、import、static var...原创 2018-08-28 21:04:39 · 433 阅读 · 0 评论 -
Java IO——File类
File 文件操作类 文件本身操作,不涉及内容; 1、基本操作 // 定义要操作的文件路径 File file = new File("/Users/ma/Desktop/TestIO.java"); //不同操作系统下的”/“问题 File file = new File(File.separator ...原创 2018-09-01 00:17:19 · 154 阅读 · 0 评论 -
JavaIO——字节流
字节流 字节流:InputStream、OutputStream 字符流:Reader、Writer 本质区别:字节流是原生的操作,而字符流是经过处理后的操作。 基本操作流程: 1. 根据文件路径创建File类对象 ; 2. 根据字节流或字符流的子类实例化父类对象 ; 3. 进行数据的读取或写入操作 4. 关闭流(close(...原创 2018-09-01 00:57:43 · 156 阅读 · 0 评论 -
Java基础——String 类
String类不可变有两个含义:1) 字符串长度不可变,这是由于底层是char[]数组决定的 2) 字符串内容不可变,这是由于String类没有提供修改内容的方法导致的。对于第二种”不可变”的含义,是有办法让其内容发生改变的——使用反射:String s = " a b ";System.out.println(s);// 通过反射从方法区内存空间获取String类相关信息Cl...原创 2018-08-29 15:36:26 · 202 阅读 · 0 评论 -
Java 基础——基本数据类型及运算符
基本数据类型与引用数据类型的相互转化:1、Integer转换 Integer a = newInteger(3); //定义Integer包装类对象 int b = a+5; //对象和基本对象进行运算2、jdk1.5引入自动装箱和拆箱机制后,转换更便利装箱:把基本类型转换成包转类,使其具有对象的性质,又可分为手动装箱和自动...原创 2018-08-29 15:45:19 · 135 阅读 · 0 评论 -
JavaIO——字符流
字符输出流:Writer 实现了Closeable,Flushable、Appendable 接口 具体方法: Write类中的writer()直接输出字符串: out.write(msg) ; 操作文件使用FileWriter子类: Writer out = new FileWriter(file) ; 特点: W...原创 2018-09-01 09:20:32 · 232 阅读 · 0 评论 -
JavaIO——标准输入输出
字符编码: 国标编码: GBK包含简体中文和繁体中文; GB2312只包含简体中文。 UNICODE编码: java提供的16进制编码,可以描述世界上任意的文字信息,传输负担大。 ISO8859-1: 国际通用编码,但是所有的编码都需要进行转换 UTF编码: 相当于结合了UNICODE、ISO8859-1,也就是说需要使用到16进制文字使用UNICODE,而 ...原创 2018-09-01 10:48:25 · 250 阅读 · 0 评论 -
JavaIO——序列化
序列化 将内存中保存的对象变为二进制数据流的形式进行传输,或者是将其保存在文本中. 实现序列化与反序列化的对象操作: ObjectOutputStream、 ObjectInputStream Serializable默认会将对象中所有属性进行序列化保存,如果现在某些属性不希望被保存了,那么就可以 使用transient关键字。 class ...原创 2018-09-01 15:21:07 · 163 阅读 · 0 评论 -
IntelliJ Idea 常用快捷键列表
IntelliJ Idea 常用快捷键列表Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当前文件的结构Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F...原创 2018-09-01 15:27:18 · 132 阅读 · 0 评论 -
Java项目之——聊天室(知识积累)
C/S 架构APP:聊天室C 客户端:Socket:代表客户端和服务器都用来互相沟通的套接字。 五个构造方法: 创建一个流套接字并将其 连接到指定主机上的指定端口号:public Socket(String host, int port) 创建一个流套接字并将其连接到指定 IP 地址 的指定端口号:public Socket(InetAddress host, int port) ...原创 2018-09-01 16:00:35 · 1022 阅读 · 0 评论 -
Java项目——聊天室(简单版)
服务器(单线程版本 ):import java.io.IOException;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner;public class sigleThreadserver { public st...原创 2018-09-01 16:36:00 · 3433 阅读 · 2 评论 -
Eclipse 常用快捷键
Eclipse 常用快捷键Eclipse的编辑功能非常强大,掌握了Eclipse快捷键功能,能够大大提高开发效率。Eclipse中有如下一些和编辑相关的快捷键。1. 【ALT+/】此快捷键为用户编辑的好帮手,能为用户提供内容的辅助,不要为记不全方法和属性名称犯愁,当记不全类、方法和属性的名字时,多体验一下【ALT+/】快捷键带来的好处吧。2. 【Ctrl+O】显示类中方法和属性的大纲,...原创 2018-09-01 16:59:22 · 151 阅读 · 0 评论 -
Java 基础——类与对象总结
面向对象特征:封装、继承、多态封装:就是把属性私有化,提供公共方法访问私有对象。举个简单的例子,我们去Apple店里买个iPhoneX,我们不需要知道它是怎么制造的,我们只需要知道它能用来打电话,上网和用来装B就行了。对于程序设计,用户只需要知道类中某个方法实现了什么样的功能,需要该功能的时候直接去调用就行了,不用去关心方法内部的实现细节继承:当多个类具有相同的特征(属性)和行为(方法)时...原创 2018-08-29 21:41:30 · 434 阅读 · 0 评论 -
JDBC 编程 (一)
JDBC 编程 概念: JDBC(Java DataBase Connectivity):一种用于执行SQL语句的Java API。(需要JDBC驱动) 工作原理: JDBC API---商标(sun 公司) 服务器:数据库 客户端:应用代码 使用流程:(MySQL 面向命令;Java 面向对象) 1、加载JABC API 驱...原创 2018-09-02 14:25:01 · 228 阅读 · 0 评论 -
Java 面试题集锦 (一)
Q1:面向对象的特征有哪些方面?A1:面向对象的特点是:封装,继承,多态; 封装:把数据和操作数据的方法绑定起来,对数据的访问只通过已定义的接口。 继承:子类在原有基础上功能的扩展,继承让变化中的软件系统有了一定的延续性,同时,继承也是封装程序中可变因像的重要手段; 多态:不同类型的子类对同一消息做出不同的响应,多态又分为编译时多态和运行时多态,方法重载实现编译时多态,...原创 2018-08-28 09:39:32 · 249 阅读 · 0 评论 -
抽象类与接口(基础汇总)
接口:抽象方法与全局变量;——实现(可以实现多个接口)implements抽象类:普通类+抽象方法;——继承(单继承局限)extends现阶段必须记住接口优先原则。...原创 2018-08-28 00:32:42 · 105 阅读 · 0 评论 -
单例设计模式——懒汉式(手写)
懒汉式:在使用该类的对象时才会产生实例化对象; //懒汉式单例设计模式public class Singleton { //private 修饰对象 private static Singleton singleton; //构造方法私有化 private Singleton() {} //判断,如果是第一次使用该类对象,才new 产生实例化对象...原创 2018-08-28 00:16:38 · 2589 阅读 · 0 评论 -
多线程之——————实现方法(一)
多线程作为Java中的第一大特色,肯定需要仔细斟酌一番。 (一)了解什么是进程与线程 进程:程序在操作系统中的一次进程; 线程:进程中的一个分支; (二)实现多线程的四种方式: 1、继承Thread 类实现多进程 首先继承Thread类;再覆写run();最后调用start(...原创 2018-08-10 00:21:04 · 107 阅读 · 0 评论 -
JAVA 知识点总结 (二)
1、String 类的实例化方式,直接赋值与构造方法的区别直接赋值:开辟一块堆空间,该字符串对象可以自动保存在对象池中,以供下次使用; 构造方法:开辟两块堆空间,其中有一块为垃圾空间,不能自动保存到对象池,需要使用intern()手工入池。2、StringBuffer 与 StringBuilder 区别:(String 对比)String 字符串常量不可变,StringBuffer与...原创 2018-08-06 17:49:55 · 114 阅读 · 0 评论 -
多线程——常用操作方法(二)
多线程常用操作可以总结成一下七种。1、取得当前线程对象: public static native Thread currentThread(); 2、线程的命名和取得当前线程的名字:public Thread(Runnable terget,String name)、public String getname()3、线程休眠 ——sleep(毫秒):让线程暂缓执行,等预计时间后再恢复...原创 2018-08-10 20:36:34 · 223 阅读 · 0 评论 -
单例设计模式(饿汉 VS 懒汉)
饿汉式:构造方法私有化; private 封装static 修饰已经new好的实例化对象; static 修饰的内部类中getInstance 获取唯一对象;package test;class Singleton{ private static Singleton singleton=new Singleton(); public static Singleto...原创 2018-08-06 18:16:49 · 120 阅读 · 0 评论 -
反射四大核心操作——基础(一)
反射:对象的反向处理操作;(没有反射,就没有Java的任何框架)反射四大核心操作:Class、Constructor、Method、Field1、Class:Class 类的三种实例化方式: 任意对象.getclass 类名.class 调用Class的静态方法,Class.forName(类的全名称)利用Class对象反射创建类的对象Class取得对象; 根据Class...原创 2018-08-10 23:08:07 · 438 阅读 · 0 评论 -
反射实现单级VO
自动填充属性值【反射:调用必须存在对象,成员变量、方法、构造函数都是以对象的形式调用{一切皆对象} 】Emp.javapackage reflect;public class Emp { private String ename; private String job; public String getEname() { return ename; } p...原创 2018-08-11 00:47:32 · 131 阅读 · 0 评论 -
集合类之——collection (一)
集合类 :动态的对象数组两大核心接口:Collection、Map 本篇博客主要介绍:Collection 接口1、 定义:public interface Collection<E> extends Iterable<E> (JDK1.5之前直接定义 Iterator<E> iterator()) public interface Ite...原创 2018-08-12 00:54:33 · 163 阅读 · 0 评论 -
反射——类加载器(二)
类加载器:JVM定义把类加载器阶段中,通过类的全名称获得此类二进制字节流的操作模块Class类中取得当前类加载器: public Class getclassLoader() Bootstrap (启动类加载器): 使用C++实现,是JVM本身的一部分; 负责加载存放于<Java _HOME>\lib目录下被JVM一文件名形式识别的文件 无法直接引用 ExtCla...原创 2018-08-12 09:05:41 · 96 阅读 · 0 评论 -
三大新特性——枚举、泛型、注解
JDK1.5之后出现三大新特性,枚举、泛型、注解。 (一)枚 举关键字:enum; 枚举本质是多例设计模式,虽然Java提供enum关键字,但枚举病史新结构,使用enum定义的枚举本质上相当于class定义的类,默认继承与Java.lang.ENUM父类。枚举类对象声明必须放在首行;(二)泛 型 定义是不会设置属性和方法的类型,使用时再定义( 用于解决程序中参数转换问题)...原创 2018-08-08 23:30:12 · 187 阅读 · 0 评论 -
Java 基本数据类型(详解)
java基本数据类型就8种:java四类八种基本数据类型第一类:整型 byte short int long第二类:浮点型 float double第三类:逻辑型 boolean(它只有两个值可取true false)第四类:字符型 char在栈中可以直接分配内存的数据是基本数据类型。引用数据类型:是数据的引用在栈中,但是他的对象在堆中。要想学好Java必须知道各种数据的在内存中存...原创 2018-08-27 13:08:19 · 151 阅读 · 0 评论 -
多线程之——线程同步(三)
一、内建锁 (synchronized)同步代码块: 使用synchronized作用于方法中,同一时刻只能有一个线程进入该代码块,方法内任是多线程; synchronized(this){ //需要同步的代码块 } 同步方法: 使用synchronized作用于方法头,同一时刻只能有一个线程进入该方法; p...原创 2018-08-20 13:06:24 · 94 阅读 · 0 评论 -
Java 多线程——死锁
死锁:共享资源的循环等待,引起的线程无限等待。 解决死锁的方法:将环破解。class Book{}class Pen{}public class Test { private static Book book=new Book(); private static Pen pen =new Pen(); public static void main(String...原创 2018-08-30 20:49:15 · 177 阅读 · 0 评论 -
懒汉式单例设计模式——线程安全版
双重检查加内存屏障保证单例设计模式安全性 synchronized 锁:保证该代码块只能有一个线程; volatile 关键字:保证可见性(volatile 变量被修改后,新值被其他线程立即可见) 禁止指令重排(防止执行sig=new sigleton() 语句时,指令重排)class siglet...原创 2018-08-30 23:38:23 · 385 阅读 · 0 评论 -
单例设计模式——饿汉式(手写)
饿汉式单例://单例饿汉式实现public class Singleton { //private 封装 static 修饰new好的实例对象 private final static Singleton INSTANCE = new Singleton(); //构造方法私有化 private Singleton(){} //内部类getInsta...原创 2018-08-28 00:06:50 · 763 阅读 · 0 评论 -
Java项目——聊天室(复杂版)
客户端:import java.io.IOException; import java.io.PrintStream; import java.net.Socket; import java.util.Scanner;//读取服务器发来的消息class ReadThread implements Runnable { priva...原创 2018-09-05 16:08:59 · 2249 阅读 · 1 评论