Java基础
文章平均质量分 75
Java基础
Mico18
这个作者很懒,什么都没留下…
展开
-
21.8.28-Java中的File、IO流
1. File类的方法1.1 File类获取的方法File getAbsoluteFile() 获取绝对路径,返回值是File类型File getParentFile() 获取父路径,返回值是File类型String getName() 获取名字,File构造方法中的路径的名字String getPath() 获取File构造方法中的路径,完整的路径转成String返回long length()获取文件的字节数/*** File类的获取方法* - File getAbsoluteFil原创 2021-08-28 19:42:27 · 235 阅读 · 0 评论 -
21.8.27-Java中生产者与消费者、Lock、线程池、File、单例设计模式
1. 生产者与消费者1.1 安全问题产生线程本身就是一个新创建的方法栈内存 (CPU进来读取数据)线程的notify(),唤醒第一个等待的线程解决办法 : 全部唤醒 notifyAll()被唤醒线程,已经进行过if判断,一旦醒来继续执行线程被唤醒后,不能立刻就执行,再次判断标志位,利用循环while(标志位) 标志位是true,永远也出不去/** * 定义资源对象 * 成员 : 产生商品的计数器 * 标志位 */public class Res原创 2021-08-27 16:30:17 · 135 阅读 · 0 评论 -
21.8.23-Java中的线程、锁
1. 线程的基本概念1.1 进程任何的软件存储在磁盘中,运行软件的时候,OS使用IO技术,将磁盘中的软件的文件加载到内存,程序在能运行。进程的概念 : 应用程序(typerpa,word,IDEA)运行的时候进入到内存,程序在内存中占用的内存空间(进程).1.2 线程线程(Thread) : 在内存和CPU之间,建立一条连接通路,CPU可以到内存中取出数据进行计算,这个连接的通路,就是线程.一个内存资源 : 一个独立的进程,进程中可以开启多个线程 (多条通路)并发: 同一个时刻多个线程同时操作原创 2021-08-23 15:56:10 · 86 阅读 · 0 评论 -
21.8.21-Java中LinkedList、Set、哈希值、TreeSet、Collections
1. LinkedList集合1.1 LinkedList集合的特点LinkedList类实现接口List,LinkedList具备了List接口的特性 (有序,重复,索引)LinkedList底层实现原理是链表,双向链表LinkedList增删速度快LinkedList查询慢LinkedList是线程不安全的集合,运行速度快1.2 LinkedList集合特有方法集合是链表实现,可以单独操作链表的开头元素和结尾元素void addFirst(E e) 元素插入到链表开头void原创 2021-08-21 14:49:48 · 149 阅读 · 0 评论 -
21.8.20-Java中异常、Collection、Iterator、List
1. 异常1.1 try…catch异常处理try catch的异常处理的格式写法 :try{ 被检测的代码 可能发生异常的代码}catch(异常类的类名 变量名){ 异常的处理方式 : 写什么都可以 定义变量,创建对象,调用方法,循环,判断... 只要写了catch,异常就被处理掉了}public static void main(String[] args) { int[] arr = {1}; //try ca原创 2021-08-20 14:47:40 · 149 阅读 · 0 评论 -
21.8.19-Java中Data、Calendar、DateFormat、SimpleDateFormat、LocalDate、Period和Duration类、Integer类
1. String相关的内容1.1 字符串出现的次数字符串A,另一个字符串B,计算B字符串在A字符串中出现几次例子 : dsabdnabdsnabeabiwpabekabd ab实现过程对字符串进行索引查找 indexOf找到的字符串的索引记录,进行字符串的截取直到找打到未知, indexOf方法是-1一旦找到了,计数器++ /** * @param str 原始字符串 * @param sub 要查找的字符串 * @return 出现次原创 2021-08-19 15:45:57 · 441 阅读 · 0 评论 -
21.8.16-Java中StringBuilder类、System类、Math类、Arrays类、数组与字符串操作
1. StringBuilder类的常用方法1.1 append追加StringBuilder append(任意类型) 参数追加成字符串,无论参数写的是什么,变成字符串.相当于是字符串里面的 + 运算public static void builderAppend(){ StringBuilder builder = new StringBuilder(); //方法append追加字符串 builder.append(100); builder.append(5.8原创 2021-08-16 14:55:26 · 135 阅读 · 0 评论 -
21.8.15-Java中Object类、String类、正则表达式
1. API的概念应用程序编程接口 : 每一个技术,官方都会定义出许多的功能,开发人员可以直接拿来使用. API可以理解为Sun公司已经开发好的类和方法. API文档就是我们开发的帮手2. Object类Object类 : 所有类的父类,一切类都直接或者是间接继承Object. Object类中的所有功能,子类都可以使用.福利 :class XX {} //自己的构造方法,继承下来11个方法Object类定义在了java.lang包, lang包是核心包,此包中的任何类,在使用的时候不需要imp原创 2021-08-15 15:00:31 · 146 阅读 · 0 评论 -
21.8.14-Java中接口、static、final、内部类
1. 接口1.1 接口之间的关系类和类之间是继承关系(单继承),类和接口之间是实现关系(多实现implements),接口和接口之间是继承关系,支持多继承,一个接口可以同时继承多个接口. interface A extends B,C,D{}1.2 实现类还是抽象类实现类实现接口,重写一部分抽象方法,实现类还是一个抽象类public interface A { public abstract void a1(); public abstract void a2();}pub原创 2021-08-14 15:44:38 · 150 阅读 · 0 评论 -
21.8.12-Java中对象的多态性、抽象类、接口
1. 对象的多态性1.1 对象多态性前提必须有继承或者是接口实现必须有方法的重写多态的语法规则: 父类或者接口的引用指向自己的子类的对象父类 变量(对象名) = new 子类对象(); //多态写法对象调用方法,执行的子类的方法重写1.2 多态中成员的特点多态中成员变量的特点编译 : 父类中没有成员变量,编译失败运行 : 运行父类中的成员变量多态中成员方法的特点编译 : 父类中没有成员方法,编译失败运行 : 运行子类的方法重写简练 : 成员方法原创 2021-08-12 15:50:32 · 197 阅读 · 0 评论 -
21.8.11-Java中的继承
1. 继承①程序中的继承在程序中,也能出现继承的关系,让一个类去继承另一个类.比如 A类继承B类出现继承的关系A类是B类的子类,或者称为派生类B类是A类的父类,或者称为超类,基类子类可以直接拥有父类的成员(不是全部)②继承的语法格式继承使用关键字 extends,表示继承的意思定义格式class B{}class A extends B{} // A 继承 B类继承的入门案例 – 子类拥有父类成员/** * 定义的是 Teacher和Manager类的共性原创 2021-08-11 14:45:21 · 97 阅读 · 0 评论 -
21.8.10-Java中类的方法、递归、构造器、this
1.方法的重载①需求计数器类中已有方法:做两个int类型的加法public int add(int a, int b)想要增加新的方法:做两个double类型的加法public double add(double a, double b)为了满足更多使用情况,还想有更多方法:public int add(int a, int b, int c)小结:在一个类中,很可能会有很多类似的需求,为了满足这些需求,我们会声明很多相似的方法。同时为了让方法的调用者体验更好、更容易找到所需方法,这些原创 2021-08-10 15:40:47 · 228 阅读 · 0 评论 -
21.8.9-Java中类、包、对象、属性、方法
1.创建类和对象①.类的组成[1]属性(对应程序中的数据)通过程序中的各种数据类型,来描述一个类的『特征』[2]行为(对应程序中的操作)通过程序中的方法(也就是面向过程视角中的函数),来执行这个类的对象能够做的『动作』②.声明一个空类③.声明一个完整类(有属性和方法)public class Person { //属性:若没有初始化,系统自动初始化为0 int weight; //方法:public代表公共方法,任何地方都可被调用,int i是形式参数原创 2021-08-09 20:06:49 · 248 阅读 · 0 评论 -
8.图形用户界面1
容器和空间的公共属性setSize(5,9); //设置字体宽度高度 getWidth(); //显示字体宽度 getHeight(); //显示字体高度 setLocation(10,20); //设置窗口位置 getX(); //显示窗口X坐标位置 getY(); //显示窗口Y坐标位置 setBounds(250,200,300,300); //设置坐标位置,宽度,高度 setBackground(Color.red); ...原创 2021-08-08 12:41:38 · 66 阅读 · 0 评论 -
7.类和对象
类的简单示例/类的简单实例class Point{ int x,y,color; //成员变量 void show(){ //成员函数 System.out.println(String.format("坐标:%d,%d 颜色是:%d", x,y,color)); }}public static void main(String[] args) { Point a = new Point(); //Point原创 2021-08-07 18:56:52 · 78 阅读 · 0 评论 -
6.函数和日期类
函数函数三要素:返回类型 函数名 参数值public static void main(String[] args) 返回类型:void函数名:main参数值:String[] args函数可以调用其他函数。函数如果没有返回值可以用void,函数体内不写return。函数的每个参数必须独立声明。判断一个数是否是质数 public static void main(String[] args) { int a; Scanner re..原创 2021-08-06 15:29:15 · 83 阅读 · 0 评论 -
5.数学函数和字符串
数学函数Math.abs(x)//绝对值函数abs:5Math.max(7,99)//max返回两个数中最大值:99Math.min(7,99)//max返回两个数中最小值:7Math.pow(2,3)//pow第一个数的第二次幂2的3次方:8.0Math.random()//返回0.0-1.0之间随机数Math.ceil(3.5)//向后四舍五入:4.0Math.floor(3.5)//向前四舍五入:3.0Math.r...原创 2021-08-05 14:18:10 · 142 阅读 · 0 评论 -
4.数组知识
定义一维数组并分配空间int a[];int []a;数组名 = new 数据类型[长度]a = new int[10];定义二维数组并分配空间int a[][];int [][]a;a = new int[3][4];二维数组每行元素可以不同int a[][];a[0]=new int[2];a[1]=new int[3];a[2]=new int[5];实例:import java.util.Scanner;public class Four {原创 2021-08-04 15:05:37 · 81 阅读 · 0 评论 -
3.循环结构
while语句while (条件表达式){ 语句块;}do while语句for语句原创 2021-08-03 17:07:29 · 56 阅读 · 0 评论 -
2.分支结构
双分支结构:if(逻辑表达式){ 语句块1;}else{ 语句块2;}注意事项1:如果每条分支上只有一条语句,可以省略一对{}注意事项2:如果只有if分支上有执行语句,可以省略else部分多分支结构:if (逻辑表达式1) 语句块1;else if (逻辑表达式2) 语句块2;else if (逻辑表达式3) 语句块3;else if (逻辑表达式4) 语句块4;else 语句块5;switch (表达式){ case 常量标号1:原创 2021-08-03 15:00:38 · 458 阅读 · 0 评论