![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
初学java
qq_49214533
这个作者很懒,什么都没留下…
展开
-
java反射:通用编程 常用 设计模式
java反射:通用编程类对象:类加载的产物,封装了一个类的所有信息,类对象的各个组成部分都是对象public class Test { public static void main(String[] args) throws Exception { Student student = new Student(); Teacher teacher = new Teacher(); System.out.println(student.getClass().getName()); Sys原创 2020-09-03 08:50:20 · 157 阅读 · 0 评论 -
网络编程 OSI TCP/IP模型 基于TCP的网络编程
网络编程:网络模型:OSI( 开放式系统互联 )第一层 :物理层 , 为设备间的数据通信提供传输信号和物理介质 (双绞线,光导纤维)第二层 :数据链路层 , 提供介质访问和链路管理。通过规程或协议来控制传输数据的正确性 (MAC)第三层 :网络层 , ip选址和路由选择 (ip地址)第四层 :传输层 , 建立,管理和维护端到端的连接 (TCP/UDP)第五层 :会话层 , 建立,管理和维护会话 (断点续传)第六层 :表示层 , 数据格式转原创 2020-09-03 08:48:33 · 115 阅读 · 0 评论 -
IO框架 Input/Output
IO框架:流:内存与存储设备之间传输数据的通道流的分类:按方向分: 输入流:将存储设备中的内容读入到内存中 输出流:将内存中的内容写入到存储设备中按单位分: 字节流:以字节为单位,可以读写所有数据 字符流:以字符为范围,只能读写文本数据按功能分: 节点流:具有实际传输数据的读写功能 过虑流:在节点流的基础上增强功能,可以单独存在,但是毫无意义 字节流字节输入流:InputStream //读取 public int read(){}原创 2020-08-29 09:34:25 · 206 阅读 · 0 评论 -
线程(2) 线程安全问题,死锁问题
线程安全:多线程是随机获得时间片,时间长度也随机,可能就会出现安全问题比如:A ,B线程同时往同一个数组下标为0的位置插入元素,如果A线程找到下标0的位置了,还未执行插入操作,时间片到期,开始执行B线程,B线程也找到这个0的位置,并插入元素,再执行A线程时,A线程的元素会覆盖B线程插入的元素,这时线程是不安全的当多线程并发访问临界资源时,如果破坏原子操作,可能会造成数据的不一致临界资源:共享资源(同一对象), 只有一次仅允许一个线程使用,才可保证其正确性原子操作:不可分割的多步操作,被视为一个整原创 2020-08-29 09:32:01 · 145 阅读 · 0 评论 -
线程(1)
线程:进程:是一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。线程: 又称轻量级进程,程序中的一个顺序控制流程,同时也是cpu的基本调度单位,进程由多个线程组成,彼此间完成不同的工作,交替执行,称为多线程Java虚拟机是一个进程,当中默认包含主线程(main),可通过代码创建多个独立的线程,与main并发执行进程与线程的关系:进程是操作系统资源分原创 2020-08-29 09:30:19 · 96 阅读 · 0 评论 -
异常:
异常:异常:程序在运行过程中出现的特殊情况,如果不对这些情况正确处理,可能导致程序中断。异常以函数为基础单位异常的分类:Throwable:可抛出的,一切错误或异常的父类,位于java. lang包中 Error:JVM,硬件,执行逻辑错误,不能手动处理 Exception:程序在运行和配置中产生的问题,可处理 RuntimeException:运行时异常,可处理可不处理 CheckedException:受查异常,必需处理异常的产生:自动抛出异常:程序运行遇到原创 2020-08-24 21:28:56 · 79 阅读 · 0 评论 -
集合 Collection Map体系 泛型详解
集合:集合:对象的容器,定义了多个对象进行操作的常用方法,可实现数组的功能,java.util.* 下,降低开发成本集合只能存储引用类型,数组引用类型,基本类型都可以Collection 集合体系:collection:父接口,代表任意类型的对象,无序无下标父接口中定义了多个方法,由继承他的子类实现,list和set集合继承了Collection接口,也继承了Collection的多个方法,list继承了父类的方法,还定义了子类独有的方法。set中只继承了父类的方法,没有自己独有的方法。。li原创 2020-08-20 22:14:38 · 130 阅读 · 0 评论 -
超类Object包装类String类日期函数
Object:超类,基类,所有类的直接或间接父类,Object中定义的方法,所有对象都具备Object类型可以存储任何对象,作为参数,可接受任何对象。作为返回值,可返回任何对象getClass() : 返回引用中存储的实际对象类型,,通常用于判断两个引用中实际存储对象类型是否一致hashCode() : 返回该对象的十进制的哈希码值 哈希码不唯一toString() : 返回该对象的字符串表示equals(Object obj) : 比较两个对象地址是否相同,可进行覆盖,比较两个原创 2020-08-18 10:06:20 · 123 阅读 · 0 评论 -
java 接口 interface 内部类
接口 interface接口相当于特殊的抽象类,定义方式。组成部分都与抽象类相似 但接口不是类接口只能定义公开静态常量,公开抽象方法 ( public static final abstract ) 关键字可以省去,但依旧是公开的 静态的 最终的 抽象的接口中不写变量 阿里规范与抽象类的异同:同:可编译成字节码文件不能创建对象可以作为引用类型具备Object类中定义的方法不同:所有属性都是公开的静态常量,隐式使用 public原创 2020-08-14 21:59:34 · 935 阅读 · 0 评论 -
java 重要的三个修饰符 abstract static final
修饰符 abstract static finalabstract :修饰的类为抽象类,不完整,不具体的类,,无法独立存在,不能new对象强制使用多态作用:可被子类继承,提供共性属性和方法。可声明为引用,更自然的使用多态。抽象父类可作为子类的组成部分,依附于子类对象的存在 由 父类共性+子类独有组成完整的子类对象。抽象方法:只声明方法,不实现方法,强制子类必需实现该抽象方法,提供完整的具体的调用版本static: 静态 可以修饰属性和方法,成为静态属性(类属性)。静原创 2020-08-14 21:56:09 · 78 阅读 · 0 评论 -
java面向对象三大特征------封装,继承,多态
面向对象三大特征------封装,继承,多态封装:尽肯能的隐藏对象的内部细节,控制对象的访问修改权限类中定义私有属性:private int age;实例对象,对属性进行赋值Dog dog =new Dog();dog.age = 20; 报错 私有属性不可访问,,如果不是private直接赋值可能会有非法数据的录入这时可以在类中定义公共方法 setter getter方法,对象外可以通过调用set方法进行赋值,在set方法中判断输入数据是否合法继承:类与类之间的特征和原创 2020-08-12 08:48:15 · 83 阅读 · 0 评论 -
java面向对象编程思想
多态好处:可替换性可扩充性接口性灵活性多态使用场景:使用父类作为方法形参实现多态,使方法参数的类型更广泛。使用父类作为方法返回值实现多态,使方法可以返回不同子类对象。...原创 2020-08-10 13:49:20 · 73 阅读 · 0 评论 -
java选择排序
// 选择排序,,第一个值依次与后面的值比较大小,如果第一个值大,这两个值就互换位置,第一次循坏找出最小的在第一个。第二次。。。。。。长度为n比较n-1c次 int[] oneArray = new int[] { 4, 2, 0, 8, 7, 1, 5, 9, 3, 6 }; for (int i = 0; i < oneArray.length - 1; i++) { for (int j = i + 1; j < oneArray.length; j++) { if原创 2020-08-03 18:51:25 · 61 阅读 · 0 评论 -
冒泡排序详解
int min;int[] oneArray = new int[] { 4, 2, 0, 8, 7, 1, 5, 9, 3, 6 };for (int i = 0; i < oneArray.length - 1; i++) { // 循环oneArray.length// - 1// 次,每循环完一次,找出一个最大的放在最后for (int j = 0; j < oneArray.length - i - 1; j++) { //// 循环onrArray.length原创 2020-08-03 18:49:08 · 121 阅读 · 0 评论 -
四行代码写出九九乘法表
// 九九乘法表for (int i = 1; i < 10; i++) {for (int j = 1; j <= i; j++) {System.out.printf(j + " * " + i + " = " + j * i + “\t”); // 加// \t是为了使乘法表整齐}System.out.println("");}原创 2020-08-03 18:47:25 · 135 阅读 · 0 评论 -
杨辉三角--java二维数组实现
import java.util.Scanner;public class HelloWorld { public static void main(String[] args) { Scanner input = new Scanner(System.in); // 杨辉三角 // 首先输入一个数n,表示需要打印n行数, 杨辉三角第n行有n个数,先定义一个n*n的二维数组 // 杨辉三角每一行的第一列都是1,所以先给每一行的第一列都赋值1 // 如果是第一行赋值1如果不是执行杨辉三原创 2020-08-03 18:42:53 · 323 阅读 · 0 评论 -
数组
数组概念:一组连续的存储空间,存储多个相同数据类型的值数组创建: 数据类型[] 数组名 = new 数据类型[数组长度]; int[] a = new int[10];数组长度指定之后不可以修改。增长数组长度只能重新创建数组,复制原数组。System.arraycopy(原数组, 原数组开始复制的位置, 目标数组, 目标数组开始复制的位置, 复制长度)java.util.Arrays.copyOf(原数组,新长度); 返回带有原值的新数组引用数据类型都要new 一个使用整形数组类型原创 2020-08-03 16:10:37 · 75 阅读 · 0 评论 -
方法/函数
方法/函数多数情况下,方法与调用者之间需要数据的交互,调用者就必须提供必要的数据才能使方法完成相应的功能,调用方法时所传入的数据被称为 参数 方法的参数可以让代码功能更灵活,普适性更高,易于修改及维护形参 等价于 局部变量的声明 实参等价于局部变量的赋值返回值类型 : 基本 、引用 、void方法:实现特定功能的一段代码,可重复使用;本质是行为,返回的是目的方法的本质是行为,,所有方法都有目的,,行为的目的是本身时,可以定义为void定义方法: publ原创 2020-08-03 15:49:45 · 93 阅读 · 0 评论 -
选择结构,分支结构,循环结构
选择结构,分支结构,循环结构if ( ){ } else if{ } else { } switch(变量/表达式){ case 1: xxx ; case (byte short int char string): xxxx ; …} break跳出当前代码块 一般不用 jdk7才支持stringbreak; 跳出 跳出switch语句,或跳出当前循坏if尽量少嵌套 最多两层 不利于读、维护if:有多个逻辑原创 2020-08-03 15:48:49 · 94 阅读 · 0 评论 -
Java语言基础
Java语言基础变量: 计算机内存中的一块存储空间,是存储数据的基本单元 Java是强类型语言(严格的数据类型区分),变量类型必须与数据类型一致声明变量3种方式: 1. 先声明,再赋值 int abc;abc=1; 2. 声明并赋值 int abc=1; 3. 多个同类型变量的声明与赋值 int a,b,c=3,d=5;数据类型:基本数据类型: 1. 整数 byte (1) short (2) int (4)原创 2020-07-31 20:40:21 · 65 阅读 · 0 评论 -
如何把自己的项目打包成第三方库
把自己写的项目打包成第三方库需要打三个包:1:把自己的项目打包成 JAR(库)2:把自己的项目打包出源码JAR3:把自己的项目打包出帮助文档JAR以maven项目为例:1.首先 创建maven项目。2.在src/main/java中创建包在创建Testing.java,在main方法中输出hello,在开头添加文档注释3.右键点击mvn项目 Run as->Maven build.在Goals中输入 package指令,在该项目的target文件夹下查看打包的jar包4.复制jar包原创 2020-07-31 08:59:01 · 506 阅读 · 0 评论 -
JAVAEE分布式开发——Java概述与环境搭建
Java概述与环境搭建Java语言特点:计算机执行机制:java执行机制:标识符命名:约定俗成:类的阐述名词解释dir查看目录下的文件文件夹 del删除文件 rd删除文件夹安装配置工作空间:Java语言特点: 面向对象(贴近人类思维模式,模拟现实世界,解决现实问题) 简单性(自动内存管理机制,不易造成内存溢出,简化流程处理,语义清晰) 跨平台(操作系统,服务器等)计算机执行机制: 编译执行:将源文件编译成平台相关的码文件,一次编译,多次执行。执原创 2020-07-30 22:56:30 · 478 阅读 · 0 评论