菜鸡自学Java坎坷路.系统学习
内涵是一种信仰
这个作者很懒,什么都没留下…
展开
-
java环境变量的配置
配置三个系统变量即可 CLASSPATH.;%java_home%\libJAVA_HOMEC:\Program Files\Java\jdk-10.0.1Path%JAVA_HOME%\bin原创 2019-02-25 20:19:43 · 124 阅读 · 0 评论 -
IO_装饰设计模式_类与类之间的关系_文件的分割与合并_IO流的总结_day28
1.IO流的设计模式就是装饰设计模式:主要表现在处理流,就是起一个增强的作用;2.类与类之间的关系3.文件夹的copy注意文件夹的拷贝,不能将父目录拷贝到子目录里,这样会进入一个死循环,我们可以通过判断父目录的文件地址是否包含子目录来判断,如果包含就说行;4.文件的分割与合并5.IO流的总结:下图为重点流:下图为流的总结:我们学过IO流之后要掌握以下操作:...原创 2018-06-09 19:56:37 · 169 阅读 · 0 评论 -
I_O流的其他流_对象处理流_序列化与反序列化_文件的打印流
1.文件的序列化与反序列化package com.bjsxt.io.others;/** * 空接口只是标识 * @author Administrator * */public class Employee implements java.io.Serializable { //不需要序列化 private transient String name;//加了这个限定词就不会被序...原创 2018-06-08 17:47:14 · 159 阅读 · 0 评论 -
IO流_File1_对文件的操作_对目录的操作.菜鸡自学java_day.24
1.File中的两个常量:static StringpathSeparator 与系统相关的路径分隔符字符,为方便起见,表示为字符串。 static Stringseparator 与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串package IO01;import java.io.File;/** * 两个常量 * * 1、路径分隔符 ; File.pathS...原创 2018-06-01 19:03:14 · 472 阅读 · 0 评论 -
网络编程_UDP的编程_模拟短信的发送和接收(保留数据类型的写法)_day_32
1.UDP的编程Class DatagramSocketjava.lang.Object java.net.DatagramSocket DatagramSocket(int port) 构造数据报套接字并将其绑定到本地主机上的指定端口。 DatagramSocket(int port, InetAddress laddr) 创建一个数据报套接字,绑定到指定的本地地址。 Class Datagra...原创 2018-06-15 15:37:12 · 227 阅读 · 0 评论 -
多线程总结_网络编程_InetAddress_InetSocketAddress_URL(写一个网络爬虫的第一步爬取百度的主页)_day_32
1.多线程的总结:原创 2018-06-14 20:59:22 · 328 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.23(collections工具类的应用,队列,匿名内部类的讲解,Enumeration,引用类型的分类(强软弱虚),容器的同步控制与只读控制,枚举)
1.我们来用Collections这个工具类来写一个模仿斗地主的发牌的过程:package Collections;import java.util.ArrayList;import java.util.Collections;import java.util.List;/** * * 我们在这里模拟斗地主方法的过程 * * @author Wang * */pub...原创 2018-05-31 09:13:21 · 183 阅读 · 0 评论 -
菜鸡在学JAVA坎坷路day.17(容器3:Map加强版,Set)
1.Map加强版;(增加检索的效率)List 是有序可重复;我们使用Map的时候一般这样写: Map a =new HashMap();//一般都是这样写 接口加一个实现类Map接口的一个实现类 HashMap 他还有一个实现类就是HashTable 前者是线程安全的(就和StringBuilder,StringBuffer;ArrayList,Vector)他们类似 set 无序不...原创 2018-05-25 16:06:22 · 155 阅读 · 0 评论 -
线程的同步(并发)_锁定静态属性_单例设计模式_Double Checking(提高线程效率)_线程的死锁与解锁(生产者消费者模式)__任务的调度_day31
1.线程的同步(并发):多个线程访问一个资源,那么我们就要是资源安全,方法是使线程同步;我们使用这个关键字;线程安全的每次只能进去一个对象,就是给他加了一个锁,这个锁只有一把钥匙,所以只能一个完成后一个在进去;同步的时候可以选择同步块或者同步方法;package Synchronize;/** * * 线程的同步问题(线程安全不安全) * * @author Wang * */...原创 2018-06-13 16:49:28 · 174 阅读 · 0 评论 -
IO流_字节流_字符流_读取_写入_copy _day25
1.流的简介与操作流程:2.文件的读取与输出:1).文件的读取:package byteIO;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/** * * 文件的读取 * 1、建立联系 Fi...原创 2018-06-02 18:14:40 · 327 阅读 · 0 评论 -
eclipse的常用快捷键的介绍
1.ctrl + shift + f 格式化代码块2.ctrl + shift + o 导包3.Alt + 上下键 代码位置的调换 4.ctrl + shift + / 添加多行注释ctrl + shift + \ 删除多行注释ctrl + / 注释当前行 在按则取消注释5.alt + / 内容提示ctrl + 1...原创 2018-06-09 16:20:34 · 132 阅读 · 0 评论 -
Socket_一个简单的模拟聊天的代码_多线程实现收发信息收发信息无先后顺序_day_33
1.Socket基于TCP的面向连接的 安全可靠但是效率就会变低;不同的协议的端口号是可以重复的,同一个协议不可以;Tcp客户端的端口是电脑自己指定的 不需要我们分配;Tcp的1024一下的端口号不要使用是留给系统的;Socket连接的示意图:接收客户端连接 阻塞式Socket socket =ser.accept(); 所谓阻塞式就是不接收到不能继续执行程序...原创 2018-06-17 12:08:20 · 786 阅读 · 0 评论 -
int字节数不定的解析_java内存的详解_运行时数据区域_程序计数器_java虚拟机栈_本地方法栈
Topic 1 : int字节数的解析有时候我们会发现一种情况:就是int字节数是会变的有时候是两个字节有时候是四个字节这是为什么呢?我们现在学习的语言普遍是编译语言就是 我们敲完代码之后需要进行编译 编译成机器码;原则上只要编译器想可以把int编译成任意的长度的,只不过是增加机器的复杂度,降低代码的可移植性;16的系统int一般都是16位的(2个字节 寄存器位宽是16位的...原创 2018-09-17 19:26:35 · 135 阅读 · 0 评论 -
注解_反射_day_36;
1.什么是注解:注意:注释是comment;几种内置注解:这个方法的上面就有这个 他的意思是不建议使用;注意:直接使用all可以压制全部,你也可以对应的研制;代码如下:package Test;import java.util.ArrayList;import java.util.Date;import java.util.List;/** * * 测试一下Annotation...原创 2018-07-07 10:23:37 · 164 阅读 · 0 评论 -
java的动态性的介绍_反射机制_获取class对象的方法_获得类信息的方法_day_37;
1.java 的动态性包括:反射机制,动态编译,动态执行JavaScript,动态字节码的操作;2.动态语言:Java可以被称之为 准动态语言;3. reflection :4.Class 这个类:5.获得 class 对象的方法:package Test;/** * * 用来测试获取class对象的类 * * @author Wang * */public class S...原创 2018-07-08 14:44:44 · 766 阅读 · 0 评论 -
进程_线程的概念_多线程模拟龟兔赛跑和抢票_静态代理设计模式_实现多线程主要的两种方式_day29
1.线程与进程的概念与区别线程是轻量级的进程,线程是进程中的多条路径;进程比较占用内存,线程是不同的执行路径;mian 方法也是一个线程 我们把他称为主线程;2.多线程的模拟(龟兔赛跑的例子)创建多线程:1、创建多线程 继承 Thread +重写run(线程体)2、使用线程: 创建子类对象 + 对象.start() 线程启动package Creat;/** * * 我们来使用多...原创 2018-06-10 21:21:26 · 343 阅读 · 0 评论 -
手写HttpServerDemo01_准备Server_html基本知识的介绍_html的简单应用_day_35
1.HttpServer的准备阶段:package Demo01;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.ServerSocket;import java.net.Socket;public class Serv...原创 2018-07-06 19:23:34 · 287 阅读 · 0 评论 -
TCP_我们实现聊天室的群聊_我们实现聊天室的私聊和群聊(这里要先给每个客户端添加一个名字)【重难点】_day_34
1.群聊;我们在原来客户端多线程的基础上在修改一下服务器端,让服务器可以是实现把一个客户端的消息转发给其他客户端的功能即可;package TCPChatDemo03;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.net.Serve...原创 2018-06-17 19:07:15 · 715 阅读 · 0 评论 -
多线程_callable_线程的状态_线程的停止_线程的阻塞(join,yield,sleep)_currentThread_priority_day30
1.使用callable接口实现多线程我们继续用这个多线程来实现龟兔赛跑:package callable;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.u...原创 2018-06-11 20:34:38 · 1553 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.16(容器2:自己模拟LickedList(list是重点),简化版的Map)
1.链表双向链表:链表有节点组成每个节点有三个信息(上一个节点的信息,自己的东西,下一个节点),这样最后一个节点和第一个节点就会特殊一点;package TestLickedLIst;/** * 写一个用链表实现的LickedList * @author Wang * */public class TestLickedList { private Node first;//定义第一...原创 2018-05-24 19:42:12 · 148 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.12(StringBuilder,MyArrayList,多维数组,冒泡排序,File的简单操作,打印文件的树状结构)
1.StringBuilder,StringBufferpackage testStringBuilder;/** * 测试可变字符序列 StringBuilder(线程不安全,效率高) StingBuffer(线程安全,效率低)他们可变是因为前面没有加final修饰 【两者除了这一点区别别的基本一样】 我们一般用前者 * String 不可变字符序列 * @author ...原创 2018-05-20 17:49:17 · 187 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.6(import的使用,extends,override)
1.包机制(package):域名倒着写。实例说明如下:/** * import的使用方法 * author :Wang * * */package cn.wang;//包必须是非注释语句的第一句import project02.user;//先是包名后是类名"包名.*"是全部导入,导入的这个包必须是public类型的才行 同一个包内可以直接使用里面的类import j...原创 2018-05-14 10:55:27 · 333 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.11(innerclass的详解 string类的详解)
1.内部类的详解:内部类是可以看成自己外部类的一个成员,他是可以访问外部类的私有的东西;1.成员内部类(a.成员内部类b.静态内部类c.局部内部类(定义在方法里面))2.匿名内部类...原创 2018-05-19 11:49:04 · 171 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.5(关于内存一个实例的讲解和this,对象值传递的详解)【重点复习】
1.创建对象:(2.中的显示的应该是显式)2.this的本质:注意:this不能用于static方法之中;static属于类在方法区不是对象,this是指当前对象,没有对象可以让他指;/** * 测试this * @author Wang * */public class TestThis { int a,b,c; TestThis(){}//构造函数不要加返回值类型他是默...原创 2018-05-13 10:40:57 · 193 阅读 · 1 评论 -
菜鸡自学JAVA坎坷路day.4(Java的内存分析)
1.Java中不用goto语句(都不会用到),要是用到了非要用到跳转的语句的话,就用带标签的continue 和break语句;例如下:/** * 输出101——150之间的质数; * @author wang * */public class lableContinue { public static void main(String[] args) { outer:for(i...原创 2018-05-12 22:19:30 · 170 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.3(包含一个掷色子游戏 和99乘法表)
1.自动转换与强制转换:(1).自动转换:容量小的数据可以自动转化容量大的(损失精度)(2).强制转换:System.out.println("######################"); double g = 3.99; int h = (int)g; System.out.println(h);//输出的是3而不是4,强制转化把他的小数点给去掉了,不是把他四舍五入2.操作数的...原创 2018-05-11 16:59:40 · 282 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.10(多态的内存分析,abstract,interface和implment,callback)
1.多态的内存分析:上图中My是Http的子类;Http是Objedt的子类;当生成一个My对象调用他的service()的时,而他自己没有重写这个方法所以就调用Http的service(他中调用了doGet()问这个doGet();是谁的doGet());然后在调this的doGet();记住一句话就是途中的this都是指当前对象也就是My类创建的对象,所以调用的是子类的doget();类似的代...原创 2018-05-18 19:16:52 · 258 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.2
1.标识符:(1).作用:作为变量名,类名等等;(2).写的时候遵循驼峰原则(每一个单词的首字母要大写);(3).开头是字母,下划线,美元符号;但是关键字和数字不能作为开头;2.变量:可操作的存储空间;一行尽量声明一个变量(这样写比较清楚)(1).静态变量(static)属于一个类;存在的时间:类在他就在;(2).局部变量属于方法;存在时间同上;(3).成员变量:属于对象;同上;(4).常量(co...原创 2018-05-10 23:06:30 · 183 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.7(封装,多态,对象的转型,final,数组,for-each)
1.封装:注意:默认的是同一个包的所有类都能访问(上面的四个修饰符并不都是包含关系 具体情况具体分析吧); protect不同包的子类也能访问(因为他子类哪里有一个星号),同一个包不是子类也能访问;2.封装的普通思想:例子:package cn.wang;/** * 测试封装 * @author Wang * */public class Person0 { ...原创 2018-05-15 08:53:50 · 188 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.13(WrapperClass,自动装箱与拆箱,测试Date类,Date与String的转换,写一个可视化的日历程序)
1.包装类:(Wrapper Class):package WraperClass;/** * 测试包装类 测试八种基本类型的其中一个 其他的就改一下方法的名字就ok * @author Wang * */public class testWrapper { public static void main(String[] args) { Integer i = new I...原创 2018-05-21 16:02:01 · 174 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.18(容器4:practice1,iterator,Set的遍历方式,Map的两种遍历方式)
1.pratice1(将下面的数据存放到一个容器里面)package Practice;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;/** * 雇员类 一个人对应一个对象 每一列都对应一个属性...原创 2018-05-26 11:08:43 · 158 阅读 · 0 评论 -
IO流_字节数组流_基本数据类型流_day27
1.字节数组流(用于操作其他电脑的内存数数据):我在这里写的程序是操作自己的字节数组所以看着有些别扭:package othersIO;import java.io.BufferedInputStream;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOEx...原创 2018-06-04 15:50:26 · 352 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.22(引用类型比较的精讲)
1.引用数据类型的比较java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。 1、整数:包括int,short,byte,long ,初始值为02、浮点型:float,double ,初始值为0.03、字符:char ,初始值为空格,即'' ",如果输出,在Console上是看不到效果的。4、布尔:boolean ,初始值为false(2):引用数据...原创 2018-05-30 14:31:49 · 157 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.15(容器1:equals与==的详解,MyArrayList02)
上图这些都是接口:可以先看一下Collection的源码;Collection定义了存取一组对象的方法:List和Set为他的子接口;List 是有序可重复的Set是无顺序不可重复Map是键(keys)值(value)映射对操作的时候 是对他们的地址进行操作;容器null和isEmpty的区别:将容器比作装苹果的篮子,那么isEmpty就是只有一个篮子而没有苹果,null是指连篮子这个对象都没有...原创 2018-05-23 17:03:44 · 150 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.14(异常机制)
测试异常1:异常的基本用法package TestException;import java.io.File;import java.io.FileNotFoundException;/** * 测试一下Exception的使用 * @author Wang * */public class testException { public static void main(S...原创 2018-05-22 19:53:07 · 357 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.21(HsahMap的练习,练习2中有map的三种遍历方式)
1.练习1:输出一句话中每个单词或汉字的出现的次数:(采用分拣的思路)package HashMapPractice;public class Letter { private int count; public Letter () { } public Letter(int count) { super(); this.count = count; } ...原创 2018-05-29 09:15:30 · 250 阅读 · 0 评论 -
IO流_处理流_转换流(编码解码与乱码的讲解)_day26
1.处理流1)缓冲流package buffered;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWrit...原创 2018-06-03 11:14:37 · 434 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.20(泛型2)
1.例子用到的类package testGeneric04;/** * 定义一个水果类 * 它有一个子类Apple * 还有一个准备类 A * @author Wang * */public class Fruit {}class Apple extends Fruit { }class A <T> { }2.泛型没有多态:package test...原创 2018-05-28 14:11:27 · 127 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.19(泛型1)
1.testGeneric01package testGeneric01;/** * 获取值: * 1、强制类型转换 * 2、手动类型检查:避免转换错误 java.lang.ClassCastException: * @author Wang * */public class gen01 { public static void main(String[] args) {...原创 2018-05-27 18:14:09 · 133 阅读 · 0 评论 -
菜鸡自学JAVA坎坷路day.1(JAVA的版本介绍和第一个用记事本写的程序,常见的DOS命令)
一.JAVA的需要了解的基本概念1. Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础;(个人...原创 2018-05-10 08:55:12 · 211 阅读 · 1 评论