目录
- 第一章 Java概述
-
- 基础常识
-
- 软件开发
- 人机交互
- 命令行方式
- 计算机语言
-
- 什么是计算机语言?
- Java语言概述
-
- Java语言的三种技术架构
- Java语言的特点:跨平台性
- Java语言的环境搭建
-
- 什么是JRE,JDK?
- 配置环境变量
- 第二章 Java基础语法
-
- 关键字
- 标识符
- 注释
- 常量与变量
- 运算符
-
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
-
- 练习
- 十六进制形式
- 三元运算符
- 流程控制
-
- 判断结构
- 选择结构
- 语句练习if-switch
- 循环结构
-
- while
- for
- 练习题
- 其他流程控制语句
- 函数
-
- 函数的定义
- 函数的特点
- 函数的应用
- 函数的重载(overload)
- 数组
-
- 数组的定义
- 内存结构
- 数组操作常见问题
- 数组常见操作
- 练习进制转换
- 二维数组
- 第三章 面向对象
-
- 面向对象概念
-
- 理解面向对象
- 面向对象的特点
- 面向对象开发,设计,特征
- 类与对象的关系
-
- 类与对象(图例)
- 类的定义
- 成员变量和局部变量的区别?
- 创建对象,使用对象
- 对象内存结构
- 匿名对象
- 封装(Encapsulation)
- private(私有)关键字
- 构造函数
- this关键字
- static(静态)关键字
- 单例设计模式
第一章 Java概述
基础常识
软件开发
- 什么是软件?
- 软件:一系列按照特定顺序组织的计算机数据和指令的集合。
- 常见的软件:
- 系统软件:
- 如DOS、windows、Linux等。
- 应用软件:
- 、迅雷等。
- 系统软件:
- 什么是开发?
- 制作软件
人机交互
- 软件的出现实现了人与计算机之间的更好交互。
- 交互方式:
- 图形化界面:这种方式简单直观,使用者已于接收,容易上手操作。
- 命令行方式:需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令。
命令行方式
计算机语言
什么是计算机语言?
- 语言:是人与人之间用于沟通的一种方式。
例如:中国人与中国人用中文沟通。
而中国人要和韩国人交流,就要学习韩语。 - 计算机语言:人与计算机交流的方式。
如果人要与计算机交流,那么就要学习计算机语。
计算机语言有很多种,如:C,C++,Java等。
这里,我们选择其中的一种:Java语言。 - Java语言主要应用在互联网程序的开发领域。常见的互联网程序比如天猫、京东、物流系统、网银系统等,以及服 务器后台处理大数据的存储、查询、数据挖掘等也有很多应用。
Java语言概述
- 是SUN(Stanford University Network, 斯坦福大学网络公司)1995年推出的一门高级编程语言。
- 是一种面向Internet的编程语言。
- 随着Java技术在web方面的不断成熟,已经成为web应用程序的首选开发语言。
- 是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Java语言的三种技术架构
该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
Java5.0版本后,更名为JAVAEE JAVASE JAVAME
Java语言的特点:跨平台性
- 什么是跨平台性?
通过Java语言编写的应用程序在不同的系统平台上都可以运行。 - 原理是什么?
只要在需要运行Java应用程序的操作系统上,先安装一个Java虚拟机(JVM JAVA Virtual Machine)即可。
由JVM来负责Java程序在该系统中的运行。
因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性。也称为Java具有良好的可移植性。
Java语言的环境搭建
什么是JRE,JDK?
简单而言:使用JDK开发完成的Java程序,交给JRE区运行。
配置环境变量
- 每次执行java的工具都要进入到bin目录下,是非常麻烦的。
- 可不可以在任何目录下都可以执行java的工具呢?
- 根据windows系统在查找可执行程序的原理,可以将java工具所在路径定义到path环境变量中,让系统帮我们去找运行执行的程序。
第二章 Java基础语法
关键字
关键字的定义和特点:
定义:被Java语言赋予了特殊含义的单词
特点:关键字中所有字母都为小写
用于定义数据类型的关键字
用于定义数据类型的关键字
用于定义流程控制的关键字
用于定义访问权限修饰符的关键字
用于定义类,函数,变量修饰符的关键字
用于定义类与类之间关系的关键字
用于定义建立实例及引用实例,判断实例的关键字
用于异常处理的关键字
用于包的关键字
其他修饰符关键字
标识符
- 在程序中自定义的一些名称。
- 由26个英文字母大小写,数字:0~9 符号:_$组成
- 定义合法标识符规则:
- 数字不可以开头。
- 不可以使用关键字。
- Java中严格区分大小写。
- 注意:在起名字的时,为了提高阅读性,要尽量有意义。
Java中的名称规范: - 包名:多单词组成时所有字母都小写。
- xxxyyyzzz
- 类名接口名:多单词组成时,所有单词的首字母大写。
- XxxYyyZzz
- 变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。
- xxxYyyZzz
- 常量名:所有字母都大写。多单词时每个单词用下划线连接。
- XXX_YYY_ZZZ
注释
- 用于注解说明解释程序的文字就是注释。
- 提高了代码的阅读性
- Java中的注释格式:
- 单行注释
- 格式:// 注释文字
- 多行注释
- 格式:/* 注释文字 */
- 文档注释
- / 注释文字 */
- 单行注释
- 对于单行和多行注释,被注释的文字,不会被JVM(Java虚拟机)解释执行。
- 对于文档注释,是Java特有的注释,其中注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
- 注释是一个程序员必须要具有的良好变成习惯。
- 初学者编写程序可以养成习惯:先写注释再写代码
- 将自己的思想通过注释先整理出来,在用代码去体现。
- 因为代码仅仅是思想的一种体现形式而已。
常量与变量
- 常量表java基础毕向东笔记示不能改变的数值。
- Java中常量的分类:
- 整数常量。所有整数
- 小数常量。所有小数
- 布尔型常量。较为特有,只有两个数值。true false
- 字符常量。将一个数字字母或者符号用单引号(’’)标识。
- 字符串常量。将一个或者多个字符用双引号标识。
- null常量。只有一个数值就是:null。
- 对于整数:Java有三种表现形式。
- 十进制:0~9,满0进1
- 八进制:0~7,满8进1,用0开头表示
- 十六进制:0-9,A-F,满16进1.用0x开头表示
- 进制的基本转换
- 十进制 二进制 互转
- 十进制转成二进制 除以2取余数
- 二进制转成十进制 乘以2的幂数
- 十进制 八进制 互转
- 十进制 十六进制 互转
- 负数的二进制表现形式
- 对应的整数二进制取反加1
- 十进制 二进制 互转
负数的最高位都是1.
- 变量的概念:
- 内存中的一个存储区域
- 该区域有自己的名称(变量名)和类型(数据类型)
- 该区域的数据可以在同一类型范围内不断变化
- 为什么要定义变量:
- 用来不断的存放同一类型的常量,并可以重复使用
- 使用变量注意:
- 变量的作用范围(一对{}之间有效)
- 初始化值
- 定义变量的格式:
- 数据类型 变量名 = 初始化值;
- 格式是固定的,记住格式,以不变应万变。
- 变量就如同数学中的未知数。
Java语言是强类型语言,对于每一种数据都要定义了明确的具体数据类型,在内存总分配了不同大小的内存空间
数据类型:基本数据类型、引用数据类型
基本数据类型:
数值型:整数类型(byte/short/int/long)、浮点类型(float/double)),字符型(char),布尔型(boolean)
引用数据类型:类(class)、接口(interface)、数组([])
整数默认int,小数默认double
- 自动类型转换(也叫隐式类型转换)
- 强制类型转换(也叫显式类型转换)
- 类型转换的原理
- 什么时候要用强制类型转换?
- 表达式的数据类型自动提升
- 所有的byte型、short型和char的值将被提升到int型。
- 如果一个操作数是long型,计算结果就是long型。
- 如果一个操作数是float型,计算结果就是float型。
- 如果一个操作数是double型,计算结果就是double型。
- 分析
- System.out.println(‘a’)与System.out.println(‘a’+1);的区别
char和int相加,char会被强制转换int 97+1=98 - 自动类型提升
- 强制类型转换
- 思考:
哪句是编译失败的呢?为什么呢?
运算符
算术运算符
- 算术运算符的注意问题
- 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。但被模数的负数就另当别论
- 对于除号"/",它的整数除和小数除是有去别的:整数之间做除法时,只保留整数部分而舍弃小数部分。
- 例如:int x = 3510;x=x/1000*1000; x的结果是?3000
- "+"除字符串相加功能外,还能把非字符串转换成字符串
- 例如:System.out.println(“5+5=”+5+5); // 打印结果是?5+5=55
赋值运算符
- 符号:
=,+=,-=,*=,/=,%= - 示例:
- 思考:
有什么区别?
比较运算符
- 比较运算符的结果都是boolean型,也就是要么是true,要么是false。
- 比较运算符"==“不能误写成”="。
逻辑运算符
- 逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3&x<6。
- "&“和”&&"的区别:
- &时,左边无论真假,右边都进行运算
- &&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
"|“和”||"的区别同理,爽或时,左边为真,右边不参与运算。
- 异或(^)与或(|)的不同之处是:当左右都为true时,结果为false。
&(与) 只要两边的boolean表达式结果,有一个为false。那么结果就是false。
|(或) 两边只要有一个为true,结果为true。只有两边都有false,结果为false。
短路
&和&&的特点:
& 无论左边是true还是false,右边都运算。
&& 当左边为false时,右边不运算。
位运算符
练习
1. 最有效率的方式算出2乘以8等于几? 2<<3
十六进制形式
三元运算符
格式:(条件表达式)?表达式1:表达式2;
- 如果条件为true,运算后的结果是表达式1;
- 如果条件为false,运算后的结果是表达式2;
获取两个数中大数。
流程控制
判断结构
格式:
特点:
条件表达式无论写成什么样子,只看最终的结果是否是true或者false
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/24721.html