![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java基础
文章平均质量分 91
学习笔记
要学就学灰太狼
我亦无他,惟手熟尔
展开
-
Java概述
什么是程序程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。个人理解,程序就是人与计算机交流的一种方式,通过程序我们可以和计算机进行交流,让计算机帮我们完成各项需求。Java的特点Java语言是面向对象的(OOP); Java 语言是健壮的。Java 的强类型机制、异常处理、垃圾的自动回收机制等是 Java 程序健壮性的重要保证; Java 语言是跨平台性的,(即: 一个编译好的.class 文件可以在多个系统下运行,这种特性称为跨平台); Java 语言是解释型的。原创 2021-12-03 23:31:35 · 422 阅读 · 0 评论 -
Java变量
为什么需要变量(1)Java程序就像是我们生活的现实世界一样,有各种各样的对象,如花草,数目,小动物等等,需要给他们命名,这就引出了变量的概念,一个程序就是一个世界,如果我们能结合现实生活来编写代码,也会轻松自然许多,写代码其实就是感情的自然流入,需好好悟。(2)变量是程序的基本组成单位(3)变量的简单示意图变(变化)量(值)的介绍概念:变量相当于内存中一个数据存储空间的表示,你可以把变量看做是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名..........原创 2021-12-04 15:41:55 · 284 阅读 · 0 评论 -
Java运算符
运算符介绍运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。(1)算术运算符(2)赋值运算符(3)关系运算符 [比较运算符](4)逻辑运算符(5)位运算符 [需要二进制基础](6)三元运算符算术运算符算术运算符是对数值类型的变量进行运算的,在 Java 程序中使用的非常多。算术运算符一览案例演示:取模:在 % 的本质 看一个公式!!!! a % b = a - a / b * b/**......原创 2021-12-04 18:13:59 · 271 阅读 · 0 评论 -
标识符的命名规则和规范
标识符的概念Java对各种变量,方法和类等命名时使用的字符序列称为标识符 凡是自己可以起名字的地方都叫标识符 int num1 = 99;标识符的命名规则(必须遵守)由26个英文字母大小写,0-9,_或 $ 组成 数字不可以开头。int 5abc = 1;//错误 不可以使用关键字和保留字,但是可以包含关键字和保留字 Java中严格区分大小写,长度无限制。 标识符不能包含空格。int a b = 99;//错误标识符命名规范[更加专业](1)包名:多单词组成时所有字母都小写:aa.原创 2021-12-04 21:45:58 · 11961 阅读 · 0 评论 -
程序控制结构
程序流程控制介绍在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。(1)顺序控制(2)分支控制(3)循环控制顺序控制分支控制 【if-else】让程序有选择的的执行,分支控制有三种:(1)单分支 if(2)双分支 if-else(3)多分支 if-else if -....-else单分支双分支多分支多分支的流程图(重要!)......原创 2021-12-05 23:04:50 · 751 阅读 · 0 评论 -
跳转控制语句
break看下面一个需求:随机生成 1-100 的一个数,直到生成了 97 这个数,看看你一共用了几次? 提示使用 (int)(Math.random() * 100) + 1思路分析: 循环,但是循环的次数不知道. -> break ,当某个条件满足时,终止循环 通过该需求可以说明其它流程控制的必要性,比如 break基本介绍:break 语句用于终止某个语句块的执行,一般使用在 switch 或者循环【for , while , do-while】基本语法:{ ……原创 2021-12-06 09:50:10 · 475 阅读 · 0 评论 -
数组、排序和查找
1.数组入门数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用类型。即:数(数据)组(一组)就是一组数据2.数组的使用使用方式 2-动态初始化先声明数组语法:数据类型 数组名[]; 也可以 数据类型[] 数组名;int a[]; 或者 int[] a创建数组语法: 数组名=new 数据类型[大小];a=new int[10]使用方式 3-静态初始化3.数组使用注意事项和细节(1) 数组是多个相同类型数据的组合,实现对这些数据的统一管理(2) 数组中的元素可以是原创 2021-12-07 21:36:10 · 393 阅读 · 0 评论 -
面向对象编程(基础部分)
1 类与对象1.1 类与对象的关系示意图1.2 类和对象的区别和联系(1) 类是抽象的,概念的,代表一类事物,比如人类,猫类…, 即它是数据类型.(2) 对象是具体的,实际的,代表一个具体事物, 即 是实例.(3) 类是对象的模板,对象是类的一个个体,对应一个实例1.3 对象在内存中存在形式(重要!!!)1.4 属性/成员变量/字段基本介绍:(1) 从概念或叫法上看: 成员变量 = 属性 = field(字段) (即 成员变量是用来表示属性的)(2) 属性是类的一个组成部分,一般原创 2021-12-09 14:57:20 · 797 阅读 · 3 评论 -
面向对象编程(中级部分)
1 IDE(集成开发环境)-IDEA1.1 IDEA 介绍(1) IDEA 全称 IntelliJ IDEA(2) 在业界被公认为最好的 Java 开发工具(3) IDEA 是 JetBrains 公司的产品,总部位于捷克的首都布拉格(4) 除了支持 Java 开发,还支持 HTML,CSS,PHP,MySQL,Python 等2 IDE(集成开发环境)-Eclipse2.1 Eclipse 介绍(1) Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。(2) 最初是由原创 2021-12-10 15:31:18 · 911 阅读 · 2 评论 -
面向对象编程(高级部分)
1 类变量和类方法1.1 类变量-提出问题提出问题的主要目的就是让大家思考解决之道,从而引出我要讲的知识点.说:有一群小孩在玩堆雪人,不时有新的小孩加入,请问如何知道现在共有多少人在玩?,编写程序解决。1.2 传统的方法来解决1.3 类变量快速入门思考: 如果,设计一个 int count 表示总人数,我们在创建一个小孩时,就把 count 加 1,并且 count 是所有对象共享的就 ok 了!,我们使用类变量来解决 ChildGame.java 改进!package com.hspe原创 2021-12-11 21:24:16 · 1046 阅读 · 8 评论 -
枚举和注解
1 先看一个需求要求创建季节(Season) 对象,请设计并完成public class Enumeration01 { public static void main(String[] args) { //使用 Season spring = new Season("春天", "温暖"); Season winter = new Season("冬天", "寒冷"); Season summer = new Season("夏天", "炎热原创 2021-12-12 22:45:23 · 518 阅读 · 2 评论 -
异常-Exception
1 看个实际的问题和一段代码运行下面的代码,看看有什么问题 ----> 引出异常和异常处理机制。public static void main(String[] args) { int num1 = 10; int num2 = 0; int res = num1 / num2; System.out.println("程序继续运行....");}2 解决方案-异常捕获对异常进行捕获,保证程序可以继续运行。代码演示 try-catch:public class Exceptio原创 2021-12-13 11:28:57 · 270 阅读 · 0 评论 -
Java常用类
1 包装类1.1 包装类的分类(1) 针对八种基本数据类型相应的引用类型—包装类(2) 有了类的特点,就可以调用类中的方法。(3) 如图:1.2 包装类和基本数据的转换演示 包装类 和基本数据类型的相互转换,这里以int 和 Integer演示。(1)jdk5 前的手动装箱和拆箱方式,装箱:基本类型 --> 包装类,反之,拆箱(2)jdk5 以后(含jdk5 )的自动装箱方式和拆箱方式(3)自动装箱底层调用的是 valueOf 方法,比如 Integer.valueOf原创 2021-12-16 11:32:09 · 493 阅读 · 0 评论 -
Java 集合
1 集合的理解和好处前面我们保存多个数据使用的是数组,那么数组有不足的地方,我们分析一下1.1 数组的不足(1)长度开始时必须指定,而且一旦指定,不能更改(2)保存的必须为同一类型的元素(3)使用数组进行增加/删除元素—比较麻烦1.2 集合(1)可以动态保存任意多个对象,使用比较方便!(2)提供了一系列方便的操作对象的方法:add、remove、set、get等(3)使用集合添加,删除新元素—简洁2 集合的框架体系Java 的集合类很多,主要分为两大类,如图 :【背下来】.原创 2021-12-19 19:24:14 · 982 阅读 · 0 评论 -
Java 泛型
1 泛型的理解和好处1.1 看一个需求@SuppressWarnings({"all"})public class Generic01 { public static void main(String[] args) { //使用传统的方法来解决 ArrayList arrayList = new ArrayList(); arrayList.add(new Dog("旺财", 10)); arrayList.add(new原创 2021-12-20 17:59:10 · 380 阅读 · 0 评论 -
JUnit
1 为什么需要 JUnit一个类有很多功能代码需要测试,为了测试,就需要写入到main方法中如果有多个功能代码测试,就需要来回注册,切换很麻烦如果可以直接允许一个方法,就方便很多,并且可以给出相关信息,就好啦—>JUnit9.2 基本介绍Junit是一个Java语言的单元测试框架多数Java的开发环境都已经集成了 Junit 作为单元测试的工具9.3 使用步骤import org.junit.jupiter.api.Test;public class JUnit_ {原创 2021-12-20 18:05:44 · 332 阅读 · 0 评论 -
多线程 (基础)
1 线程相关概念1.1 程序(program)是为了完成特定的功能,用某种语言编写的一组指令集合。简单地说:就是我们写的代码。1.2 进程(1)进程是运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存空间。当我们使用微信,又启动了一个进程,操作系统将为迅雷分配新的内存空间。(2)进程是程序的一次执行过程,或是正在运行的程序。是动态过程:有它自身的产生/存在和消亡的过程。1.3 什么是线程(1)线程是由进程创建的,是一个进程的实体(2)一个进程可以拥有多个线程原创 2021-12-22 16:17:10 · 557 阅读 · 0 评论 -
Java IO 流
1 文件1.1 什么是文件文件就是保存数据的地方,比如大家经常使用的word文档,txt文件,excel文件…都是文件。它既可以保存图片,也可以保存视频,声音…1.2 文件流文件在程序中是以流的形式来操作的流:数据在数据源(文件)和程序(内存)之间经历的路径输入流:数据从数据源(文件)到程序(内存)的路径输出流:数据从程序(内存)到数据源(文件)的路径2 常用的文件操作2.1 创建文件对象相关构造器和方法相关方法:new File(String pathname)//根据路径创建原创 2021-12-27 17:22:34 · 424 阅读 · 0 评论 -
Java 网络编程
1 网络的相关概念1.1 网络通信(1)概念:两台设备之间通过网络实现数据传输(2)网络通信:将数据通过网络从一台设备传输到另一台设备(3)java.net 包下提供了一系列的类和接口,供程序员使用,完成网络通信1.2 网络(1)概念:两台或多台设备通过一定物理设备连接起来构成了网络(2)根据网络的覆盖范围不同,对网络进行分类:局域网:覆盖范围最小,仅仅覆盖一个教室或一个机房城域网:覆盖范围较大,可以覆盖一个城市广域网:覆盖范围最大,可以覆盖全国,甚至全球,万维网是广域网的代表原创 2022-01-01 13:44:39 · 696 阅读 · 0 评论 -
多用户即时通信系统
1 为什么选择这个项目(1)有趣(2)设计到Java各个方面的技术项目框架设计Java面向对象编程网络编程多线程IO流MySQL(3)巩固旧知识,学习新知识1.1 项目开发流程原创 2022-01-06 08:59:34 · 333 阅读 · 0 评论 -
反射(reflection)
1 一个需求引出反射1.1 请看下面的问题(1)根据配置文件 re.properties 指定信息,创建Cat对象并调用方法hiclassfullpath=com.xjs.Catmethod=hi使用现有技术能做到吗?(2)这样的的需求在学习框架时特别多,即通过外部文件配置,在不修改源码情况下,来控制程序,也符合设计模式的 ocp 原则(开闭原则:不修改源码,扩展功能)(3)快速入门案例public class Cat { private String name = "招财猫"原创 2022-01-09 14:46:06 · 494 阅读 · 0 评论 -
正则表达式
1 为什么要学习正则表达式1.1 极速体验正则表达式威力创建 Regexp_.java 完成以下功能(1)提取文章中所以的英文单词(2)提取文章中所有的数字(3)提取文章中所有的英文单词和数字(4)提取百度热榜 标题结论:正则表达式是处理文本的利器//先创建一个 Pattern 对象 , 模式对象, 可以理解成就是一个正则表达式对象Pattern pattern = Pattern.compile("[a-zA-Z]+");Pattern pattern = Pattern.compil原创 2022-03-08 17:24:40 · 1865 阅读 · 0 评论