2021-08-21

Marddown学习

标题:

二级标题

三级标题

四级标题

(几个#几级标题)(别忘记加空格)

字体

Hello,word!(两边都加两个*变粗体)

Hello,word!(两边都加一个*变斜体)

***Hello,word!**(两边都加三个变斜粗体)

~~Hello,word!~~(两边加两个波浪号变删除划掉)

引用

选择狂神说Java,走向人生巅峰

分割线



图片

截图

截图2

超链接

点击跳转到狂神博客

列表

  1. A
  2. B
  3. C
  • A
  • B
  • C

表格

名字性别生日
张三1997.1.1

代码

hello

public

打开CMD的方式

安卓:win键+R 输入cmd打开控制台

Mac:搜索终端

常用的DOS命令:

#切换盘符
#查看当前目录下的所有文件dir
#切换目录cd change directory
cd..(返回上一级)
#清理屏幕  cls  (clear screen)
#退出终端  exit
#查看电脑的ip  ipconfig  (mac是ifconfig)
#打开应用
#ping 命令
  ping www baidu.com
#文件操作
md  创建目录名
rd  移除目录名
cd>  创建文件名
del  删除文件名

第三代语言

高级语言

大体上分为:面向过程 面向对象 两大类

C语言是典型的面向过程的语言。C++、JAVA是典型的面向对象的语言


C语言

应用广泛 高级语言语言鼻祖

C++

JAVA

C+±-

用于服务器开发

JAVA帝国如何诞生

C语言在1972年诞生,贴近硬件,运行极快,效率极高。操作系统、编译器、数据库、网络系统等

指针和内存管理

C++在1982年诞生,面向对象,兼容C,图形领域,游戏等

Java面向对象,类型安全,没有内存管理,没有指针,真正的可移植性,编写一次

Java初生

1995年的网页简单粗糙,缺乏互动性

图形界面的程序(applet)

Java2标准版(J2SE) : 去占领桌面

Java2移动版(J2ME): 去占领手机

Java2企业版(J2EE): 去占领服务器

Java发展

构建工具:Ant, Maven, Jekins

应用服务器:Tomcat, Jetty, Jboss, Websphere, weblogic

web开发:struts, spring, Hibernate, myBatis

开发工具:Eclipse, Netbean, Intellij, idea, Jbuilder

2006: Hadoop(大数据领域)

2008: Android(手机端)


Java特性和优势

  • 简单性

  • 面向对象

  • 可移植性

  • 高性能

  • 分布式

  • 动态性

  • 多线程

  • 安全性

  • 健壮性

java为什么成功?

Java三大版本

Write once、Run Anywhere. (JVM虚拟机)

JavaSE:标准版 (桌面程序,控制台开发…)

javaME:嵌入式开发(手机,小家电…)

javaEE:企业级开发(web端,服务器开发…)

JDK、JRE、JVM

JDK: java Development Kit (开发工具包)

JRE: java Runtime Environment (运行环境)

JVM: java Virtual Machine(虚拟机)

Java开发环境搭建

JDK下载与安装

配置环境变量

JDK目录介绍

HelloWorld及简单语法规则

Notepad++安装和使用

卸载JDK

1.删除Java的安装目录

2.删除Java_home

3.删除path下关于Java的目录

4.Java-version

安装JDK

1.百度搜索JDK8,找到下载地址

2.同意协议

3.下载电脑对应的版本

4.双击安装JDK

5.记住安装的路径

6.配置环境变量

​ 1.我的电脑——右键——属性

​ 2.环境变量——Java_home

​ 3.配置path变量

7.测试JDK是否安装成功

​ 1.打开cmd

​ 2.Java -version

Helloworld

1.随便新建一个文件夹,存放代码

2.新建一个Java文件

* 文件后置名为.java
* Hello.java
* (注意点)系统可能没有显示文件后缀名,需要手动打开

3.编写代码

public class Hello{
    public static void main(string[] args){
        System.out.print("Hello,World");
    }
}

4.编译Javac java文件,会生成一个class文件

5.运行class文件,Java class文件

可能会遇到的情况

1.每个单词的大小写不能出现问题,Java的大小写敏感

2.尽量使用英文;

3.文件名和类名必须保证一致

4.符号使用了中文

MAC基础配置学习

ls -al 打开路径下所有文件

open -e 打开并可以编辑

编译器根据语言选择,如果是C++语言,那么选择 clang++ 或者 g++,

​ 如果是C语言,那么选择gcc 或者 clang

JAVA程序运行机制

  • 编译型 compile

  • 解释型

    程序运行机制

IDEA安装

什么是 IDE Eclipse…

IDEA官网:https://www.jetbrains.com/

psvm (main方法的快捷键)

sout(system out快捷键)

JAVA基础语法

1.注释、标识符、关键字

2.数据类型

3.类型转换

4.变量、常量

5.运算符

6.包机制、JavaDoc

注释

当项目结构一旦复杂起来,需要用到注释

注释并不会执行,是给写代码的人看的

书写注释是一个非常好的习惯 BAT(百度阿里腾讯)

平时写代码一定注意规范

JAVA中的注释有三种:

  • 单行注释 以 // 开头 (只能注释一行文字)
  • 多行注释 以 /* 注释 */ 开头 (可以注释一段文字)
  • 文档注释 以 /** */

标识符

关键字

Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符

例如:string teacher=“秦疆”;

标识符注意点

  • 所有表示符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
  • 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
  • 不能使用关键字作为变量名或方法名
  • 标识符是大小写敏感的
  • 合法标识符举例:age、$salary、value、_1_value
  • 非法标识符举例:123abc、- salary、#abc
  • 可以使用中文命名,但是很low

数据类型

强类型语言

要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

弱类型语言

Java的数据类型分为两大类

  • 基本类型(primitive type)
  • 引用类型(reference type):类、接口、数组
截屏2021-08-11 12.07.28

什么是字节

  • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数
  • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示
  • 1B (byte,字节)= 8 bit (位)
  • 字符:是指计算机中使用的字母、数字、字和符号

类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换

低————————————高

Byte,short,char——int——long(64) ——float (32)——double 小数的优先级大于整数

  • 运算中,不同类型的数据先转化为同一类型,然后进行运算

    • 强制类型转换
    • 自动类型转换
    截屏2021-08-12 16.03.46
截屏2021-08-12 16.06.59 截屏2021-08-12 16.27.05

变量

  • 变量是什么:就是可以变化的量
  • Java是一种强类型语言,每个变量都必须声明其类型
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
  • 注意事项:
    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型
    • 变量名必须是合法的标识符
    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

变量作用域

  • 类变量

  • 实例变量

  • 局部变量

截屏2021-08-12 20.11.20

常量

  • 常量(constant):初始化(initialize)后不能再改变值!不会变动的值

  • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变

    final 常量名=值

    final double PI=3.14

  • 常量名一般使用大写字符

    截屏2021-08-12 20.48.51

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词外,后面的单词首字母大写 lastNme
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man. GoodMan
  • 方法名:首字母小写和驼峰原则:run(). runRun()

运算符(operator)

  • Java语言支持如下运算符: 优先级()
    • 算术运算符:+、-、*、/、%(模运算)、++、–
    • 赋值运算符:= (int a = 10(把10赋值给a))
    • 关系运算符:>.<.>=.<=.==.!=instanceof
    • 逻辑运算符:&&, ||, ! (与 或 非)
    • 位运算符:&, |, ^, ~, >>, <<, >>> (了解!!!)
    • 条件运算符 ? :
    • 扩展赋值运算符:+=, -=, *= , /=
截屏2021-08-12 21.44.38 截屏2021-08-12 21.44.38 截屏2021-08-12 22.00.18

a++和++a的区别

截屏2021-08-13 20.35.18

与 或 非

截屏2021-08-13 21.32.01

位运算

截屏2021-08-13 21.49.32

字符串连接符

截屏2021-08-13 21.59.29

条件运算符

截屏2021-08-13 22.14.32

包机制

  • 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
  • 包语句的语法格式为:

Pacage pkg1[.pkg2[.pkg3…]];

  • 一般利用公司域名倒置作为包名; www.baidu.com. com.bidu.www
  • 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句可完成此功能

Import package1[.package2…].(classname|*);

javaDoc

  • javaDoc命令是用来生成自己API文档的
截屏2021-08-15 20.58.51
  • 参数信息
    • @author作者名
    • @version 版本号
    • @since 知名需要最早使用的jdk版本
    • @param 参数名
    • @return返回值情况
    • @throws异常抛出情况

java流程控制

1,用户交互Scanner

2,顺序结构

3,选择结构

4,循环结构

5,break & continue

6, 练习

Scanner对象

  • 之前我们学的基本语法中我们并没有实习那程序和人的交互,但是Java给我们提供了这样的一个工具类,我们可以获取用户的输入。

Java.util.Scanner 是Java5的新特征,我们可以通过Scanner类来获取用户的输入

  • 基本语法:

Scanner s = new Scanner(System.in);

  • 通过Scanner类的next() 与nextLine()判断是否还有输入的数据。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2MzNNaTt-1629555554079)(/Users/dingxiuyue/Desktop/截屏2021-08-15 23.13.17.png)]

截屏2021-08-15 23.29.54
  • next():

    • 1.一定要读取到有效字符后才可以结束输入。
    • 2.对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
    • 3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
      1. next()不能得到带有空格的字符串
  • nextLine():

    • 1.以Enter为结束语,也就是说nextLine()方法返回的是输入回车之前的所有字符。
    • 2.可以获得空白。
截屏2021-08-15 23.43.03 截屏2021-08-16 21.26.57 截屏2021-08-16 21.51.23

顺序结构

  • Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
  • 顺序结构是最简单的算法结构。
  • 语句与语句之间,框与框之间是按照从上到下的顺序进行的,它是由若干个一次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本结构。
截屏2021-08-16 22.04.48

选择结构

  • if单选择结构
  • if双选择结构
  • if多选择结构
  • 嵌套的if结构
  • switch多选择结构

if单选择结构

  • 我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
  • 语法:

if(布尔表达式){

//如果布尔表达式为true将执行的语句

}

截屏2021-08-16 22.17.12

if双选择结构

  • 那现在有个需求,公司要收购一个软件,成功了,给人们支付100万元,失败了,自己找人开发。这样的需求用一个if就搞不定了,我们需要有两个判断,需要一个双选择结构,所以就有了if- else结构。
  • 语法

if(布尔表达式){

//如果布尔表达式的值为true

}else{

//如果布尔表达式的值为false

}

截屏2021-08-19 20.32.05

if多选择结构

  • 发现刚才的代码不符合实际情况,真实的情况还可能存在ABCD,存在区间多级判断。比如90-100就是A,80-90就是B……等等,在生活中我们的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题!

  • 语法:

if(布尔表达式1){

//如果布尔表达式1的值为true执行代码

}else if(布尔表达式2){

//如果布尔表达式2的值为true执行代码

}else if(布尔表达式3){

//如果布尔表达式3的值为true执行代码

}else{

//如果以上布尔表达式都不为true执行代码

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SE6Ijf7l-1629555554081)(/Users/dingxiuyue/Desktop/MarkDown学习/HelloWorld/截屏2021-08-19 20.59.28.png)]

嵌套的if结构

  • 使用嵌套的 if……else 语句是合法的。也就是说你可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。你可以像 if 语句一样嵌套 else if…else。
  • 语法:

if(布尔表达式1){

​ //如果布尔表达式1的值为true执行代码

​ if(布尔表达式2){

​ //如果布尔表达式2的值为true执行代码

​ }

}

  • 思考,我们需要寻找一个数,在1-100之间

switch多选择结构

  • 多选择结构还有一个实现方式就是switch case 语句。

  • switch case 语句判断一个变量与一系列值中某个值是否相等,每个值成为一个分支。

  • switch 语句中的变量类型可以是:

    • byte、short、int、或者 char。
    • 从 Java SE 7 开始
    • switch 支持字符串String类型了
    • 同时case标签必须为字符串常量或字面量。
  • 语法:

switch(expression){

case value:

//语句

break;//可选

case value:

//语句

break;//可选

//你可以有任意数量的case语句

default://可选

}

截屏2021-08-19 21.53.36 截屏2021-08-19 22.51.00 截屏2021-08-19 22.58.17

循环结构

  • while循环

  • do…while循环

  • for循环

  • 在Java5中引入了一种主要用于数组的增强型循环

while循环

  • while循环是最基本的循环,他的基本结构为:

    while(布尔表达式){

    //循环内容

    }

  • 只要布尔表达式为true,循环就会一直执行下去。

  • 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。

  • 少部分情况需要循环一直执行,比如服务器的请求响应监听等。

  • 循环条件一直为true就会造成无限循环(死循环),我门正常的业务变成中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃!

  • 思考:计算1+2+3+4+…+100=?

截屏2021-08-19 23.30.05

do…while循环

  • 对于while语句而言,如果不满足条件,则不能进入循环。但有时我们需要即使不满足条件,也至少执行一次。

  • do…while循环和while循环相似,不同的是,do…while循环至少会执行一次。

    do{

    //代码语句

    }while(布尔表达式);

  • While 和 do-while 的区别;

    • while先判断后执行。do-while是先执行后判断!
    • do-while总是保证循环体会被至少执行一次!这是他们的主要差别。
截屏2021-08-19 23.41.07

For循环

  • 虽然所有循环结构都可以用while 或者 do…while 表示,但Java提供了另一种语句——for 循环,使一些循环结构变得更加简单。
  • for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
  • for循环执行的次数是在执行前就确定的。语法格式如下:

*for(初始化;布尔表达式;更新){

//代码语句

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SyEmtC1P-1629555554081)(/Users/dingxiuyue/Desktop/MarkDown学习/HelloWorld/截屏2021-08-20 20.50.45.png)]

  • 练习1:计算0到100之间的奇数和偶数的和
  • 练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个
  • 练习3:打印九九乘法表
截屏2021-08-20 21.05.41 截屏2021-08-20 21.26.57 截屏2021-08-20 21.57.45

增强for循环

  • 这里我们先只是见一面,做个了解,之后数组我们重点使用
  • Java5引用了一种主要用于数组或集合的增强型for循环。
  • Java增强for循环语法格式如下;

for(声明语句:表达式)

{

//代码句子

}

  • 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法。截屏2021-08-20 22.13.30

break continue

  • break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中的剩余语句。(break语句也在switch语句中使用)
  • continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
  • 关于goto关键字
    • goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子…带标签的brea和continue。
    • “标签”是指后面跟一个冒号的标识符,例如:label:
    • 对Java来说唯一用到标签的地方是在循环语句之前。而在循环语句之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,他们就会中断到存在标签的地方。
截屏2021-08-21 22.02.29
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值