
java语言
顽强的小豆子
逆风的方向,更适合飞翔
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
进程与线程
进程:一个应用程序,启动虚拟机就启动了一个应用程序。线程:进程中的运行场景,一个进程对应多个线程。进程的作用:提高cpu使用率。线程作用:提高应用程序的使用率。java程序运行原理:java命令会启动java虚拟机,启动JVM,等于启动了一个应用程序,表示启动了一个进程。该进程会自动启动一个’主线程‘,然后主线程去调用某个类的main方法。所以main方法运行在主线程中。 ...原创 2018-08-21 22:26:08 · 144 阅读 · 0 评论 -
java的自动打包和解包
作用:将基本数据类型与对象之间转换,方便java对对象的处理,java的思想是一切皆对象。Java1.5开始支持自动的打包与解包装箱:即把基本数据类型转化成对应类的对象。ArrayList=new ArrayList();//list的各种操作都是针对对象的。list.add(5);5本来是int类型的,现在自动包装成了Integer类的对象 拆箱:把相对应类的...原创 2018-08-13 15:24:13 · 1672 阅读 · 0 评论 -
转换流
功能:进行字节流、字符流的相互转换。InputStreamWriter是Writer的子类,他可以将字节输入流包装成字符输入流,方便直接读取字符。OutputStreamWriter是Writer的子类,可以将字节输出流包装成字符输出流,方便直接向目标设备写入字符。 中间用到了包装流,实现字节流与字符流间的转换,并用缓冲区实现字节的package hanghao;...原创 2018-08-08 17:12:45 · 165 阅读 · 0 评论 -
LineNumberReader
复制一个文件并将文件进行标号,包括.java文件和.txt文件,比如设置初始行号是2,就修改这句lr.setLineNumber(1);即可package hanghao;import java.io.FileReader;import java.io.FileWriter;import java.io.LineNumberReader;public class Hanghao ...原创 2018-08-08 15:45:33 · 553 阅读 · 0 评论 -
字符流
子类与父类继承关系图 使用FileReader类读取文件,该类是FileReader的一个子类package com.powerlbs;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.F...原创 2018-08-08 14:43:18 · 293 阅读 · 0 评论 -
字节缓冲流
作用:用于处理两个设备间数据发送或接收的速度不匹配的问题。实现:存储从字节流得到的数据,内部的实现是存在了字节数组,完全存到数组中以后,一次性写到文件中。package com.powerlbs;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileI...原创 2018-08-08 10:37:29 · 202 阅读 · 0 评论 -
重写、重载与装饰设计模式
重写:发生在子类,对父类进行继承后,添加新方法或重写原有的方法。重载:发生在一个类中,一个方法可以与之前写好的方法文件名相同,参数以及返回名可以不同。装饰设计模式:通过包装一个类,为他增加功能的一种设计模式,这种类的定义不同于继承。...原创 2018-08-08 09:54:43 · 485 阅读 · 0 评论 -
增强for循环、迭代器(遍历列表)
也称foreach循环。作用:遍历数组或集合中的元素。用法:LinkedList link=new LinkedList();link.add("stu1");link.add("stu3);for(object obj:link) System.out.println(obj);迭代器:Iterator it=link.Iterator();whi...原创 2018-08-03 15:17:10 · 636 阅读 · 0 评论 -
单列集合类
Collection:只能存放一种类型的数值。有序可重复可以用List,List只是接口,具体的实现有ArrayList,LinkedList以及Vector;无序不可重复用Set,Set也是接口类型,实现是类是HashSet、TreeSet,LinkedHashSet继承了HashSet;Map:可以存放键值对这样的容器。Map是接口,Hashtable、HashMap、TreeMa...原创 2018-08-03 14:56:49 · 519 阅读 · 0 评论 -
时间类
Date类现行方法:1.用来创建当前时间日期,无参构造方法Date();2.表1970年1月1日00:00:00以来的毫秒数,即时间戳Date(long date)//date表示以后的毫秒数Calendar类:作用:通过特定的方法设置和读取日期的需要部分 ...原创 2018-08-03 11:18:15 · 218 阅读 · 0 评论 -
音乐文件的复制FileInputStream
视频文件等媒体文件换成相应的文件即可。public class test { public static void main(String args[]) throws Exception{ //定义一个需要复制的文件 FileInputStream in=new FileInputStream("C:\\Users\\jd\\Desktop\\01.mp3"); //创建文...原创 2018-08-07 17:22:27 · 350 阅读 · 0 评论 -
字节流
输入流(InputStream)中常用方法 方法名 功能描述 int read( ) 读取一个八位的字符,将其转化成一个无符号整数(0~255) int read(byte[ ] b) 从输入流中读取若干字符,并存到数组b中并并将字节数作为函数返回值 int read(byte[ ] b,int off,int len) 前面跟...原创 2018-08-07 15:17:22 · 173 阅读 · 0 评论 -
Annotation作用(java)
作用:给一段代码打标签,本身并不会参与程序的执行。原创 2018-08-13 15:59:26 · 382 阅读 · 0 评论 -
寻找bug的方法
http://www.bjsxt.com/zixue/zixuezhilu_3.html 马士兵_解决Bug的方法当你遇到一个问题的时候:1:要仔细的观察错误的现象,是的,要仔细有不少同学的手非常快,在编译一个程序的时候,报了一大堆的错误,扫了一眼之后就开始盯着代码一行一行的找,看清什么错误了吗?没有!有的时候安装软件出问题了,一个对话框弹出来说出错了,马上举手问老师:“不得了了,...转载 2018-08-13 16:13:49 · 1377 阅读 · 0 评论 -
TCP协议 传图片
服务器端程序package receive;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.net.ServerSocket;import java.net.Socket;public cl...原创 2018-08-16 17:57:43 · 788 阅读 · 0 评论 -
同步、异步
异步:执行时互不影响,执行时没有先后顺序同步:执行时有一定的次序关系什么条件下用同步? 比如向银行ATM取钱时,客户端同时有两个线程向服务器发起取钱请求,第一个线程读出还有2000,取走了1000,将数据更改为余额还有一千;第二个线程,在第一个线程取钱前也读到还有2000,取走1000后,仍然将数据改成1000,这就造成了数据的不一致性。同步的前提条件:1.有多个线...原创 2018-08-21 17:40:52 · 278 阅读 · 0 评论 -
同步方法
同步方法实现的功能也是只允许一个线程访问。用法:把需要打包的的代码块写在一个方法里面,声明为public class Tongbu{ public static void main(String[] args) { Ticket1 ticket=new Ticket1(); new Thread(ticket,"线程一").start(); new Thread(ticke...原创 2018-08-20 15:35:46 · 276 阅读 · 0 评论 -
同步代码块
处理共享资源的代码在任何时刻只能有一个线程访问class Ticket1 implements Runnable{ private int tickets=10; //锁是个对象 Object lock=new Object(); public void run() { while(true) { //synchronized修饰的代码只允许一个线程执行...原创 2018-08-20 14:31:47 · 275 阅读 · 0 评论 -
线程优先级
在win10环境下,设置优先级并没有效果/*win10对优先级不敏感,把MaxPriority设为更高的优先级,结果MinPriority类放在前面就先执行它了 * */class MaxPriority implements Runnable{ public void run() { for(int i=0;i<10;i++) { System.out.print...原创 2018-08-17 17:59:56 · 219 阅读 · 0 评论 -
线程安全
含义:防止其它线程修改公共资源,而此时另一资源正在正在读取统一资源时,造成此时的数据不一致的现象,比如:你去火车站取票,你读到一张,结果另一个人也同时读到一张,你们同时买了这张票,但署上不同的名字,而这张票对应一个座位,不让谁坐谁也不高兴。...原创 2018-08-20 10:56:47 · 111 阅读 · 0 评论 -
线程插队
作用:引入其它线程,并且先执行该线程。调用其它线程的join()方法时,调用的线程将被阻塞,直到被join()方法加入的线程执行完成后他才会继续执行。...原创 2018-08-20 10:37:35 · 603 阅读 · 0 评论 -
线程让步
yield()方法不会阻塞该线程,只是将线程转换成就绪状态,让系统的调度器重新调度一次。原创 2018-08-20 10:08:57 · 161 阅读 · 0 评论 -
线程休眠
sleep方法作用:使正在正在执行的线程暂停一段时间,这时别的线程就可以执行了;该方法还会抛出异常(InterruptedException)用法:sleep(1000);休眠2秒PS:休眠结束后,并不是立即开始执行。sleep只能控制本线程不能控制其它线程...原创 2018-08-20 09:39:43 · 627 阅读 · 0 评论 -
线程
1.通过实现Runnable接口,实现单线程public class Thread1 {/* * 该代码可以执行一段线程中的代码,一会儿执行主类中的死循环 * 程序 */ public static void main(String args[]) { //将普通类跟线程关联起来 MyThread myThread=new MyThread(); Thread thr...原创 2018-08-17 15:52:34 · 128 阅读 · 0 评论 -
线程类及多线程
进程:一个操作系统中可以同时运行多个应用程序,每个应用程序被称为一个进程。即系统级别的多线程。线程:一个程序同时可能有多个运行场景,每个运行场景就叫做一个线程。并发:线程是并发运行的。操作系统将时间划分为若干个时间片,尽可能均匀分给每一个任务,被分配时间片后,任务就有可能被cpu处理,对于单个线程来说,中间间隔时间很短,好像一直在运行,从所有的线程来看,好像一直都在运行。具体实现:...原创 2018-08-22 15:18:13 · 1903 阅读 · 0 评论 -
IO综述
流:通过不同输入输出设备(键盘、内存、显示器、网络等)之间的数据传输抽象表述为“流”,位于java.io包中,按流的输入方向分为输入流和输出流,按操作数据的不同分为字节流和字符流。字节流有分为java.io.InputStream流和java.io.OutputStream字符流分为java.io.Reader和java.io.Writer ...原创 2018-08-07 14:25:41 · 136 阅读 · 0 评论 -
网络通信协议
概述网络通信协议是计算机用来连接和通信时需要遵守的规则,它规定了数据的传输格式、传输速率、传输步骤等做了统一的规定,通信的双方必须同时遵守才能完成通信。TCP/IP协议:包括TCP协议、IP协议、UDP协议、ICMP协议和一些其它协议的协议组,该协议组是目前应用最广泛的。TCP/IP协议共分为四层,从上到下应用层(HTTP、FTP、DNS)、传输层(TCP、UDP)、 网络层(IP、I...原创 2018-08-11 20:54:58 · 325 阅读 · 0 评论 -
数据输入输出流
作用:ObjectInputStream的作用是存储对象,DataInputStream与DataOutputStream存储的是基本的数据类型方法:向文件中写数据writeUTF("你好")能够从输入流中读取采用UTF-8字符编码的字符串writeByte(12)向文件流写入一个字节writeChar('1')向文件中写入一个字符writeBoolean(true)向文件...原创 2018-08-09 15:27:43 · 306 阅读 · 0 评论 -
对象输入输出流
作用:保存期望长久保存的数据。一般情况下,程序执行完,之前建立的对象都要重新回收的,如果想永久保存一些对象,可通过对象的输入输出流将对象写入硬盘,这个过程也称为序列化。使用的流程:1.对需要持久化的对象先进行序列化2.将序列化的二进制数据存入文件(在第一个代码那里实现)-----------------------------------------------------...原创 2018-08-09 11:49:42 · 1342 阅读 · 0 评论 -
java中异常处理学习
自己定义的类,不要与异常中的类命名相同,否则报错package com.y;import java.lang.ArithmeticException;public class Exception { public static void main(String args[]){ try{ int result=divide(10, 0); System.out.printl...原创 2018-07-27 20:41:02 · 238 阅读 · 0 评论 -
Runtime类
Runtime类:单例模式package stringTest;public class StringTest { public static void main(String args[]) throws Exception{ Runtime rt=Runtime.getRuntime(); //计算处理器的数量 System.out.println("处理器的个数:...原创 2018-07-30 18:06:08 · 145 阅读 · 0 评论 -
System类
1.获取当前系统属性import java.util.*;public class StringTest { public static void main(String args[]){ Properties properties=System.getProperties(); Enumeration propertyNames=properties.propertyNa...原创 2018-07-30 16:57:14 · 136 阅读 · 0 评论 -
多态性
多态: 传入不同的参数类型导致执行效果各异的现象叫多态。package jicheng;interface Animal1{ void shout();}class Dog implements Animal1{ public void shout(){ System.out.println("汪汪。。。"); }}class Cat implements Ani...原创 2018-07-27 11:04:52 · 135 阅读 · 0 评论 -
StringBuffer类
StringBuffer类也称字符串缓冲区。作用:能对之前写入的字符串进行修改。1.添加字符串常用的函数:初始化时赋初值:StringBuffer str=new StringBuffer("1234567");追加:str.append("abc");插入:str.insert(2,"cde");从以二开始的下标,插入这些字符2.删除字符串str.delete(1...原创 2018-07-30 15:45:02 · 1135 阅读 · 0 评论 -
String类的用法
1.字符串的声明初始化最简定义方法:String str1="abcd";第二个方法String str1=new String("1234");也可以String str1=new String();str1="1234";2.字符串常会调用的函数获得字符串的长度 String s="skaaaaaaaaaak"; Sys...原创 2018-07-30 13:53:13 · 219 阅读 · 0 评论 -
类的继承
1.一个类只能有一个父类2.多个类可以继承一个父类class A{ }class B extends A{ }class C extend A { }3.合法继承串class A{ }class B extends A{ }class C extends B{ } ...原创 2018-07-26 11:50:59 · 165 阅读 · 0 评论 -
java中的特殊类
1.成员内部类在一般类的内部定义的类,这种类可以访问外部类的所有成员。2.静态内部类在成员内部类的基础上再加一个条件:在前面加一个static关键字。3.方法内部类在成员方法中定义的类,他只能在当前方法中被使用。 ...原创 2018-07-19 09:14:37 · 443 阅读 · 0 评论 -
单例模式
单例模式的作用:1.控制资源的使用,通过线程同步来控制资源的并发访问2.控制对象的数量,节约资源3.用于数据共享,可以让多个不相关的进程或线程间进行通信单例模式概念:保证一个类仅有一个实例,并且供其他进程或线程访问。应用场景:1.创建一个对象需要消耗过多的资源,然后就只建立一个实例,比如I/O与数据库的连接。2.生产唯一序列号,不允许有多个数据源出现。常用实现方...原创 2018-07-17 19:29:27 · 219 阅读 · 0 评论 -
PrintStream
作用:将基本的数据类型的数据或引用数据类型的对象格式化成字符串后再输出。使用该类不必书写转化成字符串的操作方法,可以直接输出。package hanghao;import java.io.FileOutputStream;import java.io.PrintStream;public class Hanghao { public static void main(Str...原创 2018-08-09 16:38:56 · 864 阅读 · 0 评论 -
标准输入输出流
标准输入输出流一共分为三种:in、out、err。in:用于读取键盘输入的,数据为InputStream类型。in中有read()方法。out:默认将数据输出到命令行窗口,为PrintStream类型。err:将数据输出到控制台,为PrintStream类型。package hanghao;/* * 从键盘读取一行数据并输出到控制台 */public clas...原创 2018-08-10 09:27:16 · 407 阅读 · 0 评论