![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java笔记
文章平均质量分 72
John_boom
我们完蛋了么?
傻瓜,我们还没开始呢。
展开
-
tomcat服务器
1 web开发入门 1.1 回顾软件结构分类 C/S: 客户端与服务器端 特点: 1)需要安装特定的客户端 2)服务器程序升级,那么客户端程序同步升级 B/S: 浏览器与服原创 2017-11-08 09:19:44 · 803 阅读 · 0 评论 -
http协议
回顾重点内容: 1)web服务软件:把本地资源文件共享给外部访问 2)tomcat基本使用 3)web应用(网站)目录结构 |-WebRoot 根目录 |- 普通静态网页文件(html、css。。。) |-WEB-INF |-class原创 2017-11-08 22:21:58 · 301 阅读 · 0 评论 -
Git使用简介
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git的读音为/gɪt/。 Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代B原创 2017-08-01 11:35:04 · 324 阅读 · 0 评论 -
Java-GUI
GUI(图形用户界面)GUIGraphical User Interface(图形用户接口)。用图形的方式,来显示计算机操作的界面,这样更方便更直观。CLICommand line User Interface (命令行用户接口) 就是常见的Dos命令行操作。 需要记忆一些常用的命令,操作不直观。 举例: 比如:创建文件夹,或者删除文件夹等Java为GUI提供的对象都存在java.原创 2017-07-19 20:45:17 · 242 阅读 · 0 评论 -
Java学习路线
Java学习路线图 转载自微信公众号:Java团长无意间在csdn中逛到,觉得可以借鉴一下。转载 2017-07-23 18:57:30 · 277 阅读 · 0 评论 -
基本类型包装器类
基本类型包装器类介绍public class WrapperDemo { public static void main(String[] args) { /* * 场景:通过文本框获取用户输入的数字数据,可是得到的都是字符串。 * 如果想要对字符串中的数字进行运算,必须要将字符串转成数字 * Java中提供了相应的解决对象原创 2017-07-05 19:42:57 · 535 阅读 · 0 评论 -
API-Stringtest
Q1:获取两个字符串的最大相同子串public class StringTest_1 { public static void main(String[] args) { /* * 获取两个字符串的最大相同子串。 * 思路: * 1,先明确两个字符串的长短,在长串中判断短串是否存在。 * 2,存在,则说明短原创 2017-07-05 17:01:23 · 253 阅读 · 0 评论 -
API-StringBuffer与StringBuilder
public class StringBufferDemo { public static void main(String[] args) { /* * StringBuffer: * 1,是一个字符串缓冲区,其实就是一个容器 * 2,长度是可变,任意类型都行。注意:是将任意数据都转成字符串进行存储 *原创 2017-07-04 21:26:06 · 111 阅读 · 0 评论 -
API-String类介绍
String 类字符串都是对象。一旦初始化就不能被更改。因为是常量。通过String类的构造函数可以知道,将字节数组或者字符转成字符串。public class StringDemo { public static void main(String[] args) { String str="abcd"; System.out.println("str =原创 2017-07-04 20:22:42 · 365 阅读 · 0 评论 -
多线程(7)
需求: 资源有姓名和性别。 两个线程, 一个负责给姓名和性别赋值, 一个负责获取姓名和性别的值。class Resource{ String name; String sex;}//赋值线程任务class Input implements Runnable{ private Resource r; Input(Resource r)原创 2017-07-04 10:15:29 · 149 阅读 · 0 评论 -
多线程(6)
多线程的细节: 1,面试题: sleep方法和wait方法异同点是什么?相同点:可以让线程处于冻结状态。不同点: 1, sleep必须指定时间。 wait可以指定时间,也可以不指定时间。 2, sleep时间到,线程处于临时阻塞或者运行。 wait如果没有时间,必须要通过notify或者notifyAll唤醒。 3, sleep不一原创 2017-07-04 10:00:08 · 277 阅读 · 0 评论 -
多线程(5)
jdk1.5以后提供多生产多消费的解决方案。在java.util.concurrent.locks 软件包中提供相应的解决方案 Lock接口:比同步更厉害,有更多操作。lock():获取锁 unlock():释放锁;提供了一个更加面对对象的锁,在该锁中提供了更多的显示的锁操作。 替代同步。升级到JDK1.5,先把同步改成 Lock。已经将旧锁替换成新锁,那么锁上的监视器方法(wait,not原创 2017-07-03 19:40:41 · 289 阅读 · 0 评论 -
多线程(4)
多线程中最为常见的应用案例:生产者消费者问题。 生产和消费同时执行,需要多线程。 但是执行的任务却不相同,处理的资源确实相同的:线程间的通信。1,描述一下资源。 2,描述生产者,因为具备着自己的任务。 3,描述消费者,因为具备着自己的任务。问题1:数据错误:已经被生产很早期的商品,才被消费到。 出现线程安全问题,加入了同步解决。使用同步函数。 问题已解决:不会在消费到之前很早期的商品。/原创 2017-07-03 19:32:53 · 299 阅读 · 0 评论 -
多线程(3)
多线程练习//两个客户到一个银行去存钱,每个客户一次存100,存3次。//问题:该程序是否有安全问题,如果有,写出分析过程,并定义解决方案。/*发现运行结果:sum=200sum=300sum=400sum=200sum=500sum=600打印错乱,不关心,但是发现数值错误,没有100.运行了几次发现有对的。sum=100sum=300sum=400sum=200sum=原创 2017-07-03 19:22:54 · 334 阅读 · 0 评论 -
其他API
API-Systemimport java.util.Properties;import java.util.Set;public class SystemDemo { private static final String LINE_SEPARATOR = System.getProperty("line.separator"); public static void main(S原创 2017-07-12 16:01:22 · 305 阅读 · 0 评论 -
java基础回顾
/* 案例:对数据操作,获取最大值。 思路: 1,一组数,要获取最大的,比较。 2,怎么比较?按个比较。要获取数组中的每一个数据都要比较 3,比较完,记下来比较大的数据,并用这个比较大的数据和下一个数据比较,不断记录较大的值。 4,如果所有的数据都比较完,那么最后记录的较大值就是最大值。 步骤: 1,需要一个类。 2,这个类需要独立运行,必须有main方法。 3,有一个数组。原创 2017-04-14 21:46:38 · 884 阅读 · 0 评论 -
JavaSE知识点汇总
java基础—变量,运算,语句,函数,数组等简单回顾简述面向过程与面向过程的思想面向对象的代码体现面向对象——匿名对象面向对象—基本数据和引用数据参数传递的过程面向对象—this关键字面向对象—static关键字面向对象—静态变量面向对象-封装面向对象-构造函数面向对象—静态代码块+构造代码块+局部代码块面向对象—单例模式面向对象—继承概述面向对象—重写(override)原创 2017-10-14 19:39:49 · 1386 阅读 · 0 评论 -
会话管理
回顾重点内容: Servlet编程: 1)Servlet的生命周期: 构造方法:servlet对象创建时调用。只调用1次。 init方法(有参):servlet对象创建完之后调用,只调用1次。 service方法:每次发出请求时调用,调用n次。 destory方法: servlet对象销毁时调用。项目重新部署或服原创 2017-11-15 17:14:27 · 612 阅读 · 0 评论 -
Servlet编程
回顾重点内容: http协议:对浏览器与服务器之间数据传输内容格式规定! 1)http请求: 请求行 请求头 空行 实体内容 HttpServletRequest对象:获取请求信息 请求行: 请求方式:reques原创 2017-11-15 17:08:06 · 402 阅读 · 0 评论 -
网络编程(2)
TCP-大写转换-客户端public class TransClient { /** * @param args * @throws IOException * @throws */ public static void main(String[] args) throws IOException { System.out.原创 2017-10-25 21:46:20 · 454 阅读 · 0 评论 -
Java-网络编程
IPDemopublic class IPDemo { /** * @param args * @throws UnknownHostException * @throws IOException */ public static void main(String[] args) throws UnknownHostException, IO原创 2017-10-25 21:22:34 · 287 阅读 · 0 评论 -
IO流--打印流
IO的两个规律:1,名称定义规律,便于查找具体的对象。2,IO流的操作规律,四个明确,可以解决使用哪个流对象的问题。IO体系的组成。FileInputStream |--FileInputStream: |--FilterInputStream |--BufferedInputStream: |--DataInputStream: |--原创 2017-10-25 20:23:12 · 450 阅读 · 0 评论 -
IO流--文件切割合并&对象的序列化
【阶段一目标:文件的分割】 1,切割文件的原理:一个源对应多个目的;切割文件的两种方式。 2,碎片文件的命名和编号。 3,程序代码体现。 4,如何记录源文件的类型以及碎片的个数(建立配置信息文件)(其实也可以将这些信息记录碎片文件中) 5,通过Properties属性集建立配置文件。 常见方法:load(InputStream) load(Re原创 2017-10-25 20:00:51 · 430 阅读 · 0 评论 -
IO流--练习(2)
五个需求:★★★★★★★★ 需求0:将字符串写入到文件中。 明确一:有源吗?有目的吗? 源;字符串。String,不用io指定定义String字符串就可以了。 目的:文件。使用IO技术,输出流 OutputStream Writer。 明确二:是文本数据吗? 是! 目的:Writer。 明确三:具体设备是?原创 2017-10-25 19:42:04 · 288 阅读 · 0 评论 -
IO流--字符流(补充)
编码表:其实就是生活中文件和计算机二进制的对应关系表。 1,ascii: 一个字节中的7位就可以表示。对应的字节都是正数。0-xxxxxxx 2,iso8859-1:拉丁码表 latin,用了一个字节用的8位。1-xxxxxxx 负数。 3,GB2312:简体中文码表。6,7仟的中文和符号。用两个字节表示。两个字节都是开头为1 两个字节都是负数。 GBK:目前最常用的原创 2017-10-25 19:37:10 · 318 阅读 · 0 评论 -
IO流--练习
学生类ackage cn.itcast.domain;public class Student implements Comparable<Student>{ private String name; private int cn,en,ma; private int sum; public Student() { super(); }原创 2017-10-25 16:58:36 · 335 阅读 · 0 评论 -
IO流--字符流
【目标:字符流】 1,需求:读取一个中文。 发现字节流可以读取就是麻烦。 通过api FileReader,从而了解父类Reader。 提到了编码表。★★★★ 编码表:其实就是生活中文件和计算机二进制的对应关系表。 1,ascii: 一个字节中的7位就可以表示。对应的原创 2017-10-25 16:49:10 · 376 阅读 · 0 评论 -
IO流--字节流
【目标:操作设备上的数据,读写数据】 1,将内存中数据都写入到文件中。 需要使用系统资源,Java中用于操作系统资源的对象是哪个呢? 通过api的索引关键字 Output Input 找到OutputStream InputStream。原创 2017-10-25 16:06:15 · 353 阅读 · 0 评论 -
IO流--File类
介绍File类 【目标:了解输入输出技术】 1,数据都在内存中,想要把数据持久化,需要使用系统中的一些输入和输出技术。 2,Java程序调用jvm,jvm调用所在系统的输入和输出内容完成Java程序的输入和输出。 3,简单理解:内容数据持久化到硬盘:输出。将硬盘数据读取到内容运算:输入。后面还有很多的设备。原创 2017-10-25 15:28:22 · 335 阅读 · 0 评论 -
JS(12)
复习三个取整函数 Math.ceil(1.4) 2 天花板 往高了取 Math.floor(1.01) 1 地板 往小了取 Math.round() 四舍五入函数 1.5 2动画的原理: 盒子位置 = 盒子当前的样式 + 步长 以前 offsetLeft 现在 所有的样式 内嵌 外链 ie obj.cu原创 2017-10-24 21:27:55 · 425 阅读 · 0 评论 -
编程语言小结
陆续学习过c语言,java,JavaScript,其实这些高级计算机语言都是有共同的基本语法规则。总结他们的共同基础部分包含: 常量,变量,表达式(算术表达式,赋值表达式,逻辑表达式),顺序结构,分支结构,循环结构,数组,函数。当然,不同的语言的语法规则的表达方式也是不一样的,但是核心基础思想是相同的。这些语言在高级语法特性上就会呈现出不同,渐渐也能体会到java的面对对象的编程思想,而c语言则是原创 2017-11-10 11:27:16 · 552 阅读 · 0 评论 -
多线程(2)
案例:售票的例子。售票的动作需要同时执行,所以使用多线程技术。问题产生的原因:1,线程人任务中在操作共享的数据。 2,线程任务操作共享数据的代码有多条(运算有多个)。解决思路:只要让一个线程在执行线程任务时将多条操作共享数据的代码执行完, 在执行过程中,不要让其他线程参与运算即可。代码体现:Java中解决此问题通过代码块来完成的。 这个代码块-同步代码块 synchronized 格式:sy原创 2017-07-03 15:33:31 · 304 阅读 · 0 评论 -
多线程(1)
多线程: 进程:正在执行中的程序,其实是应用程序在内存中运行的区域。线程:进程中的一个执行单元,负责进程中的程序的运行,一个进程中至少要有一个线程。 一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。程序启动了多线程,有什么应用呢? 可以实现多部分程序同时执行,专业术语称之为 并发。多线程的使用可以使用cpu的资源,如果线程过多会导致性能降低。cpu处理程序时是通过原创 2017-07-03 15:05:39 · 405 阅读 · 0 评论 -
java-package
对于多个类为了便于管理(类的同名情况),所以java提供了一个解决方案。 包机制:落实到操作系统上,就是文件夹。对Java的文件进行分文件夹管理。包的作用: 1,对类文件进行管理 2,给类文件提供了名称空间。包的定义:使用关键字 package 。对带有package定义的java文件进行指定类文件位置的编译方式。 java -d 目录 源文件 (命令行方式操作)如果目录选原创 2017-06-11 16:30:26 · 437 阅读 · 0 评论 -
面向对象-构造函数
需求: 为了描述事物更准确,发现事物对应的很多对象一创建就有了一些初始化的数据。 通过Java中的另一个小技术完成,就是构造函数,对象本身就是构造出来。 构造函数的作用:可以对对象创建进行初始化。 构造函数在代码中的体现: 1:没有返回值类型,因为构造函数,创建完成就结束,不需要结果,void也不需要写,区别于一般函数。 2:构造函数名称和类名一致。 3:没有具体的返回值原创 2017-04-22 16:57:08 · 497 阅读 · 0 评论 -
面向对象-封装
表现: 1,函数就是一个最基本的封装体。 2,类其实也是一个封装体。 从以上两点得出结论: 1,提高了代码的复用性。 2,隐藏了实现细节,还要对外提供可以访问的方式,便于调用者的使用。这是核心之一,也可以理解为封装的概念。 3,提高了安全性。 它是面向对象思想的特征之一: 共有三个特征:封装,继承,多态。 举例:机箱。隐藏了板卡设备的细节,对外提供了插口以及开关等原创 2017-04-22 16:51:21 · 361 阅读 · 0 评论 -
面向对象—静态变量
**静态变量** : 什么时候定义静态变量呢? 当该成员变量的值,每个对象都一致时,就对成员变量进行静态修饰。class Circle{ private double radius; private static double pi=3.14;//若不加static修饰,则每个圆对象都存储一份,浪费内存空间,实现对象的共享,即加入静态关键字修饰。 Circle(dou原创 2017-04-22 16:38:23 · 1014 阅读 · 0 评论 -
面向对象—static关键字
class Person{ private String name; private int age; Person(String name,int age) { this.name=name; this.age=age; } public void speek() { System.out.p原创 2017-04-19 21:43:28 · 562 阅读 · 0 评论 -
面向对象—继承概述
为了提高复用,只建立一份代码。 一个类只要和另一个类产生关系就可以了 关系:继承。例如下面的例子: 找到学生和工人的共性类型,将需要提供复用的代码进行抽取。 定义到一个共性类型的类中。 Person name age.怎么在代码体现中让学生和Person产生关系? 只要通过关键字 extends(继承)。class Person{ String name; int ag原创 2017-05-04 17:20:14 · 413 阅读 · 0 评论 -
抽象类
描述狗,行为:吼叫 描述狼,行为:吼叫 发现他们之间有共性,可以进行向上抽取。 当然是抽取它们的所属共性类型,犬科 犬科这类食物,都具备吼叫行为,但是具体的功能,是有具体的子类来确定的 这时在描述犬科时,发现了有些功能不具体,这些不具体的功能,需要在类中标识出来,通过Java中的关键字abstract(抽象) 定义了抽象函数的类必须被abstract关键字修饰,被abstract关键字修原创 2017-05-11 20:59:04 · 313 阅读 · 0 评论