第42节:Java知识点回顾复习
java介绍
java
是一门面向对象的程序设计的编程语言,在1995
年,sun
公司发布了java
这门编程语言,有咖啡的名称,是当时灵机一动的想法。在2010
年的时候被oracle
公司收购了,目前jdk
的版本是java10
了。
那么什么是jdk
呢?学习java
必须要有jdk
,那么我们现在去下载吧!根据下方给的自己就可以找到了。
下载地址
下载jdk,和eclipse就比较简单了,提供jdk 9 地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html
提供jdk 8 地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
在java
这门语言是世界上很热门的一种,在java
中有它自己的一种重要工具,为jvm
为java
的虚拟机。java
实现平台的无关性就是由它jvm
的帮忙,这个工具是实现在各种平台上运行的关键。
java
的编程过程是由最初的源文件(xxx.java
),源文件在到编译器里去执行,然后产生出字节码文件(xxx.class
),字节码文件在到解释器中去执行,就可以在显示器上展示效果了。其中解释器是由java
中的虚拟机去执行完成的,将字节码文件解释到具体的平台上即可,实现一次编译,到处运行的结果。
在java
中有jre
的工具,为java
运行时环境,包含java
虚拟机,和java
核心类库,支持的一些文件等。
如果要运行我们的
java
程序,就要下载jre
,在java
中,我们要重点了解,学习,并且掌握jdk,jre,jvm
;如果你下载了jdk
,那么你就有了jre,jvm
,因为下载的jdk
包含了jre,jvm
。记得你们老师也叫你们下载了jdk
,那么它就有了jre,jvm
,这一点你们放心。
java se java
标准版java ee java
企业版java me java
微型版
讲述jdk的配置
jdk
包安装完成后,需要配置环境变量。点击桌面上的“我的电脑”或者“此电脑”
,选择“属性”
,接着选择“高级”,点击其中的“环境变量”弹出“环境变量”
对话框,其中包含“用户变量”和“系统变量”两部分。
设置系统“变量名”为“java_home"
,"变量值”为“c:\programfiles\java\jre1.8.0_112"
,即是jdk
安装路径,你也可以将地址栏中的路径直接复制过来。
再次选择”系统变量"
列表中找到其"path"
(双击)-->"编辑",弹出”编辑系统变量"
,点击新建;
然后,单击”系统变量"
下面的“新建"
按钮,创建名为”classpath“
的环境变量,值为”."
,英文的一点,代表当前路径。
环境变量:
java_home:
d:\java\jdk1.8.0_25
classpath :.;%java_home%\lib;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar;
path:
;%java_home%\bin;%java_home%\jre\bin
java语言概述
jdk
jdk
(java
开发工具包),有jdk
其中有javac
为编译器,是将源程序(xxx.java
)编译成字节码的(xxx.class),然后通过java
指令编译成(.class)程序的结果。
java
语言 描述
javaee
企业版javase
标准版javame
小型版
学习java
基础课程,学会使用eclipse
,eclipse
为java
集成开发坏境ide
,创建第一个java
源文件代码:
public class helloworld{ public static void main(string[] args){ system.out.println("hello world"); } } // 注解 helloworld 为类的名字 public static void main(string[] args) 为主方法 system.out.println("hello world") 为打印输出,并在控制台显示 hello world public 为访问修饰符,表示公开的访问类
在运行的平台上:
java为面向对象的语法
什么是面向对象?
答:在java
中一切皆对象;可以理解为现实世界中的人,物,都可以看做为对象。
在一个java
的类中,该类可以为对象,那么类就是一个对象,一个对象就如人,它有方法和属性,即为动作和状态的特征。
//建立一个人的类 public class person{ string name; //人具有姓名的属性 string age; //人具有年龄的属性 public void eat(){ system.out.println("人具有吃的方法"); } }
重点:
java
的必备要点,掌握,jdk,jre,jvm
。jre包含jvm和javase的标准类库
;jdk包含jre和开发工具集
,java
有很多版,如java se
,java ee
,java me
哦~
下载ecplise
下载eclipse
链接(官网):
https://www.eclipse.org/downloads/
接下来我们进入到这个链接:
https://www.eclipse.org/downloads/eclipse-packages/
变量的定义
什么是变量,即为可以变化的量,示例
int age = 12;
其中 int
为变量的数据类型,表示整数age
为变量“=”
为赋值操作符,把右边的值赋值给左边的变量
public class person{ int age = 12; public static void main(string[] args){ system.out.println(age); } }
在java
中我们要学的很多,但是都很一般啦,java
本身就是语言,跟学习语言差不多。我们要掌握java
中的一些:标识符,关键字,变量,常量,数据类型等。
介绍八种基本变量的类型
数据类型分为基本数据类型和引用数据类型(类,class,接口,interface,数组
)
基本数据类型分数值型,字符型,布尔类型
八种基本数据类型
整型 4种:byte(8位),short(16位),int(32位),long(64位)
字符型 1种:char(16位)
浮点型 2种:float(32位),double(64位)
布尔型 1种:boolean(1位)(true,false)
java
表示整数的为八进制,十进制,十六进制
特殊表达:
八进制: 以0开头 十六进制: 0x或0x开头
转义字符
\uxxxx 四位16进制数所表示的字符 \' 单引号字符 \" 双引号字符 \\ 反斜杠字符 \r 回车 \n 换行 \t 横向跳格 \b 退格
标识符的命名:
标识符数字不能开头,标识符中不能有空格 标识符由字母,数字,下划线,美元符号组成 标识符严格区分大小写 标识符不能使关键字或者保留字 标识符是标识符,关键字是关键字,不能混为一谈
关键字
保留字: goto
关键字有很多:
abstract,char,else,for,interface,private,super,boolean,class,extends,if,long, protected,switch,true,break,continue,false,implements,instanceof,public,synchronized,try, byte,default,final,import,new,return,this,void,case,do,finally,null,short,throw, volatile,catch,double,float,int,package,static,throws,while等。
变量的命名:
驼峰法命名,单个单词全小写,多个单词第一个单词小写,后面单词首个字母大写。 需要见名知意。 满足不是其他的名称。
强制类型转换和自动类型转换
数据类型的转换
类型转换为自动类型转换和强制类型转换
数据类型的理解:规则口诀
小到大自动,大到小强制,表示小杯子里的水可以倒入大杯子里,而大杯子里的水倒入小杯子里,会出现溢出。
/ 转换的数据类型比较 / byte->short(char)->int->long->float->double
final修饰符
final修饰的,为不可变得值,
final可以修饰变量,修饰类,修饰方法。
被修饰的变量,只能被赋值一次 被修饰的类,不能被继承 被修饰的方法,不可被重写
static
关键字的理解
-
static
代码块,只会在类加载的时候执行一次。static变量不需要创建对象就可以引用。 - 静态成员变量可以通过对象访问,只要访问权限足够就可以。
- 静态代码块,随着类的加载而执行,只执行一次。
运算符
算术运算符 赋值运算符 复合赋值运算符 自增自减运算符 // 等统统要掌握 // 运算符的优先级 // 算术运算符 关系运算符 逻辑运算符
算数操作符
一般的 +,-,*,/,还有两个自增 自减 ,以及一个取模 % 操作符。
这里的操作算法,一定要掌握 好强制类型转换和自动类型转换。
if条件结构
if(条件){ <语句块> }
if-else
if(条件为true){ <语句块> } else{ <语句块> }
三目运算符
布尔表达式?表达式1:表达式2
多重if
if(score >=90) { system.out.println("优"); } if (score>=80 & score<90){ system.out.println("良"); } if(score >=60 & score<80){ system.out.println("中"); } if (score <60){ system.out.println("不及格"); }
switch语句格式:
switch (mon) { case 1: case 2: case 3: system.out.println(mon + "月是春天"); break; case 4: case 5: case 6: system.out.println(mon + "月是夏天"); break; case 7: case 8: case 9: system.out.println(mon + "月是秋天"); break; case 10: case 11: case 12: system.out.println(mon + "月是冬天"); break; default: system.out.println("一年有12个月"); }
while和do-while循环语句
while
为true
时,继续执行;do-while
中条件为true
时,继续执行,至少会执行一次。
for
语句格式:
for(int i=0;i<10;i++){ 表达式语句; }
continue
和break
continue
为继续下一次循环break
为结束整个循环
数组:相同类型的数据集合为引用数据类型
数据类型[] 数组名; 数据类型 数组名[]; 数组名 = new 数据类型[数组长度]; 数据类型[] 数组名= new 数据类型[数组长度];
//这种就是排序算法,比如有6个人,第一轮要进行5次比较 //第一轮 for(int index=1;index<arr.length;index++) { if(arr[0]>arr[index]) { int temp = arr[0]; arr[0] = arr[index]; arr[index] = temp; } } print(arr); //第二轮 for(int index=2;index<arr.length;index++) { if(arr[1]>arr[index]) { int temp = arr[1]; arr[1] = arr[index]; arr[index] = temp; } } print(arr); //第三轮 for(int index=3;index<arr.length;index++) { if(arr[2]>arr[index]) { int temp = arr[2]; arr[2] = arr[index]; arr[index] = temp; } } print(arr); //第四轮 for(int index=4;index<arr.length;index++) { if(arr[3]>arr[index]) { int temp = arr[3]; arr[3] = arr[index]; arr[index] = temp; } } print(arr); //第五轮 for(int index=5;index<arr.length;index++) { if(arr[4]>arr[index]) { int temp = arr[4]; arr[3] = arr[index]; arr[index] = temp; } } print(arr); //第六轮没有,我们arr.length=6举例 //int index = 6;index<arr.length; false public static void selectionsort(int[] arr) { for(int count=1;count<arr.length;count++) { for(int index=count;index<arr.length;index++) { if(arr[count-1]>arr[index]) { int temp = arr[count-1]; arr[count-1] = arr[index]; arr[index] = temp; } } }
方法
方法声明格式:
访问修饰符 返回类型 方法名(参数列表){ 方法体 }
面向对象
万物皆对象,现实中存在的事物都可以看成一个对象,单一职责原则,就是一个类只有一个引起功能变化的原因,一个类中,功能越多就容易耦合性高,复用性就变低,一旦耦合度高,就可能会影响整个程序的运行。
面向对象的三大特征: 继承,封装,多态。 封装,实现对信息的隐藏,只能通过特定的方法进行访问,隐藏对象的信息,留出接口进行访问。
static
static+属性 静态属性 类属性 static+方法 静态方法 类方法 static+方法内局部変量 static+代码块
第二十节:详细讲解string和stringbuffer和stringbuilder的使用
第二十一节:java语言基础-关键字,标识符,注释,常量和变量,运算符
第二十七节:java基础面向对象-静态,单例模式,继承详情知识点
第32节:java中-构造函数,静态方法,继承,封装,多态,包
往后余生,唯独有你
简书作者:达叔小生
90后帅气小伙,良好的开发习惯;独立思考的能力;主动并且善于沟通
简书博客:
结语
- 下面我将继续对 其他知识 深入讲解 ,有兴趣可以继续关注
- 小礼物走一走 or 点赞