JavaSE学习笔记
文章平均质量分 71
学习笔记
左+右
这个作者很懒,什么都没留下…
展开
-
Java IO流基础
JavaIO流 File类 File类的理解 File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹) FiLe类声明在java.io包下。 File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用Io流来完成。 后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的"终点"。 File的构造器 File(String filePath) File(strin原创 2021-04-15 11:24:59 · 100 阅读 · 0 评论 -
Java集合框架
集合框架 集合的概念 **概念:**对象的容器,定义了对多个对象进行操作的常用方法。可实现数组的功能。 和数组的区别: 数组长度固定,集合长度不固定。 数组可以存储基本类型和引用类型,集合只能存储引用类型。 位置:java.util.*;里 Collection体系集合 Collection父接口 特点:代表一组任意类型的对象,无序、无下标、不能重复。 方法: boolean add (Object obj)//添加一个对象。 boolean addAll(Collection c) //将原创 2021-04-08 16:54:48 · 79 阅读 · 0 评论 -
常用类学习
常用类 内部类 概念:在一个类内部定义一个类 特点: 编译之后可生成访问外部类的字节码文件。 内部类可以直接访问外部类的私有成员,而不破坏封装。 可为外部类提供必要的内部功能组件。 分为四种: 成员内部类 静态内部类 局部内部类 匿名内部类 成员内部类 在类的内部定义,与实例变量、实例方法同级别的类。 外部类的一个实例部分,创建内部类对象时,必须依赖外部类对象。 当外部类、内部类存在重名属性时,会优先访问内部类属性。 成员内部类不能定义静态成员。 代码展示: package com.zy.Cla原创 2021-04-02 14:43:46 · 100 阅读 · 0 评论 -
生产者/消费者问题(线程信号)
生产者/消费者问题 1.管程法 package com.zy.demo03; public class TestPC { public static void main(String[] args) { SynContainer synContainer = new SynContainer(); new Productor(synContainer).start(); new Consumer(synContainer).start();原创 2021-03-13 18:49:17 · 76 阅读 · 0 评论 -
多线程学习
多线程 多任务 现实中很多同时做多件事情的例子,看起来是多个任务都在做,其实本质上我们的大脑在同一时间依旧只做了一件事。 Process(进程)与Thread(线程) 说起进程,就不得不说程序。程序是指令和数据的有序集合,其本身没有任何运行的意义,是一个静态的概念。 而进程则是执行程序的一次执行过程,是一个动态的概念。是系统资源分配的单位。 通常在一个进程中可以包含多个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是CPU调度和执行的单位。 **注意:**很多多线程是模拟出来的,真正的多原创 2021-03-13 18:54:16 · 86 阅读 · 0 评论 -
UDP多线程实现聊天
UDP多线程实现学生教师聊天 学生类 package com.zy.UdpThreadChat; public class Student { public static void main(String[] args) throws Exception { new Thread(new StudentSend(7777,"localhost",9999)).start(); new Thread(new StudentRecevice(8888,"老师")).st原创 2021-03-18 18:24:02 · 174 阅读 · 1 评论 -
网络编程学习
网络编程 概述 计算机网络: 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。 网络编程的目的: 传播交流信息,数据交换,通信。 想要达到这个效果需要什么: 准确定位网络上的一台主机,端口,ip 找到主机后,怎么传输数据。 javaweb:网页编程 网络编程:TCP/IP C/S 网络通信的要素 实现网络的通信需要 通信双方的地址: IP 端口号 IP地址 i原创 2021-03-18 18:25:53 · 146 阅读 · 1 评论 -
注解与反射
注解与反射 注解 Annotation是从JDK5.0开始引入的新技术. Annotation的作用︰ 不是程序本身,可以对程序作出解释.(这一点和注释(comment)没什么区别) 可以被其他程序(比如:编译器)读取 Annotation的格式: 注解是以"@注释名"在代码中存在的,还可以添加一些参数值﹐例如:@SuppressWarnings(value=“unchecked”). Annotation使用: 可以附加在package , class , method , field等上原创 2021-03-22 21:52:44 · 64 阅读 · 0 评论 -
异常学习笔记
异常 什么是异常 实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求、程序要打开某个文件,文件可能不存在或者文件格式不对,等等。 软件程序在运行过程中,非常可能遇到刚刚提到的这些异常问题,我们叫异常,英文是:EXception,意思是例外。 异常指程序运行时出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。 异常发生在出现运行期间,它影响了正常的程序执行流程。 简单分类 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法原创 2021-03-07 20:09:34 · 76 阅读 · 0 评论 -
面向对象学习
面向对象 概念思想 物以类聚,分类的思维方式。 元素加方法就是类 面向对象编程(Object-Oriented Programming,OOP)。 面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。 类和对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物。 对象是抽象概念的具体实例 对象创建分析 使用new创建对象 使用new关键字创建的时候,除了分配内存空间外,还会给创建好的对象进行默认的初始化 以及对类中构造器的调用。 类中的原创 2021-03-06 16:37:43 · 96 阅读 · 0 评论 -
数组学习笔记
数组 数组是相同类型数据的有序集合。 数组描述的是相同类型的多个数据,按照一定的先后次序排列组合而成。 每个数据为一个数组元素,每个数组元素可以通过一个下标来访问。 数组声明和创建 首先必须声明数组变量,才能在程序中使用数组。语法 dataType[] array; //首选的方法 dataType array[]; //效果一样,但不是首选 Java语言用new操作符来创建数组。语法 dataType[] array = new dataType[size];//size是自己定义的数组长原创 2021-03-05 14:20:52 · 72 阅读 · 0 评论 -
方法学习笔记
方法 方法是语句的集合,它们一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 方法设计原则:方法是功能块,设计时最好保持方法的原子性,一个方法只完成一个功能。 方法定义和调用 定义 方法类似其他语言的函数,是用来完成特定功能的代码片段。 方法包含一个方法头和一个方法体。下面是方法的所有部分: 修饰符:可选的,告诉编译器如何调用该方法,定义了访问类型。 返回值类型:方法可能有返回值,return value;就是方法的返回语句原创 2021-03-04 18:28:10 · 99 阅读 · 0 评论 -
流程控制学习
流程控制(语法) Scanner对象 java.util.Scanner,使用Scanner时要先导入前面这个包。 我们通过Scanner类来获取用户的输入。 Scanner类用next(),和nextLine()方法获取输入的字符串,在获取前用hasNext()或hasNextLine()判断是否还有输入的数据。 import java.util.Scanner; public class Test{ String name; public static void main(String原创 2021-03-03 18:11:58 · 136 阅读 · 2 评论 -
包机制,JavaDoc
包机制 为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。 命名格式: package pkg1[.pkg1[.pkg1...]]; 一般公司域名倒置为包名。 例如:我的是www.zy.com,创建的包名就是com.zy.www。 下图所示: 为了能使用一个包成员,我们需要在Java中导入该包。使用 “import” 语句完成此功能。 import package1[.package2].(classname|*);//*就是在这之下的全部一起导入 import co原创 2021-03-03 15:02:32 · 88 阅读 · 3 评论 -
运算符学习
Java语言支持如下运算符 算术运算符:+ ,- ,*,/,%,++,– 赋值运算符:= 关系运算符:>,<,>=,<=,==,!= instanceof 逻辑运算符:&&,||,! 位运算符:&,|,^,~,>>,<<,>>>(了解!!!) 条件运算符:? : 扩展赋值运算符:+=,-=,*=,/= 基本运算符 +加法,-减法,*乘法,/除法,%取余,++自加,–自减。 int b = ++a;//先自加,再赋原创 2021-03-01 10:25:47 · 107 阅读 · 2 评论 -
注释,标识符,数据类型
注释 就是对代码的解释,注明代码的功能,或者定义的东西是代表什么。 注释是不会被运行的,是给人看的。 平时写代码要注意规范,习惯写注释,方便查看修改。 单行注释://,符号后的一行被注释 多行注释:/* */,中间是一块区域,可以不同行 文档注释: /** * */ 可以在中间的*后面写一些参数。 public class Hello { public static void main(String[] args) { // 输出一个Hello,world! 单行注释原创 2021-02-09 15:35:47 · 147 阅读 · 0 评论 -
记事本写Java代码
记事本写Java代码 随意创建一个文件夹,用来存放代码。 新建一个Java文件 新建一个文本文档 重命名为Hello.java 注意:系统可能没有显示文件的后缀名,记得点击上方的查看,然后在显示/隐藏中选择文件扩张名,之后重命名,不然会导致文件名是Hello.java.txt,导致无法执行后面步骤。 编写代码 public class Hello{ public static void main(String [] str){ System.out.println("Hello,w原创 2021-02-08 14:30:27 · 250 阅读 · 0 评论