文章目录
一:Java概述
1.Java发展史
目前Java JDK的最新版已为13.0,但是JDK8是比较稳定的一款
Java凭借着安卓的兴起,已经很多年成为使用量最多的编程语言,不过今年年底可能会被C语言超过
2.Java的特点
Java语言是由C/C++语言改进并重新设计出来的
3.Java虚拟机
Java虚拟机存在于我们下载的JDK中的JRE里,Java虚拟机的存在使得Java程序可以在所有的平台上运行
4.Java垃圾回收机制
Java的垃圾回收机制将程序员从对繁杂的垃圾处理中解放出来
5.JDK与JRE
JDK中的javac.exe和java.exe分别为编译工具和运行工具 ,我们配置好Java环境之后可以在cmd中查看他们的信息。我们也可以直接在命令行用javac 、java命令来编译执行Java程序而不用借助于编译器
JDK中包含了许多开发工具,对Java开发人员来说特别方便,所以我们要学会查阅JavaAPI
二:Java基本语法
1.第一个Java程序
每当我们学习一门语言,我们传统第一个的程序就是HelloWorld
通过培训时对它的操作我们得出了这些结论
2.数据类型
Java的基本数据类型与C/C++类似,小区别在于Java的boolean类型变量的值只能是true或者false而不能用1或者0代替
Scanner的功能有很多,我们可以慢慢探索
3.String类型
String类型的变量只是String内容的管理者而不是所有者,也就是说它的变量名类似与C/C++里的指针 指向指向储存内容的那块空间
所以String变量b=a其实就是让a和b都指向a所指的那块空间
而判断两个字符串内容是否相等就不能用"=="来评判了,因为它判断的是两个变量是否指向同一个空间 而判断内容是否相等我们用a.equals(b);
三:面向对象程序设计
1.类和对象
2.对象的初始化
我们在类里面方法外面定义的变量叫做成员变量,成员变量如果不赋初值的话系统会自动赋一个默认的初值
如果某个数据,这个类的所有对象都是一样的,比如所有人都有一个心脏,那么我们就可以在定义时直接赋初值
3.构造函数
Java的构造函数与C++类似
在创建一个对象时,构造函数的构造在成员变量之后
如果我们的某项数据是每个对象间都不一样的(如人的名字),那我们就可以让它在构造函数中由构造函数的参数列表传进来给我们的某项数据赋值
4.方法重载
5.this关键字
this关键字通途很多,培训没有来得及讲,希望大家用到的时候自己去学习
5.对象交互
就像现实中,所有的人、事、物之间都存在一些联系,没有什么东西是独立存在的。
对象也是这样,一个对象就可以看作是一个个体,让一个对象单独存在没有什么太多意义
接下来这个例子能让我们更好的理解对象间的交互
class Display{
int value=0;
int limit;
Display (int limit){
this.limit=limit;
}
void increase(){
value ++;
if (value==limit){
value=0;
}
}
int getValue(){
return value;
}
}
public class Clock {
Display min=new Display(60);
Display hour=new Display(24);
public void Run(){
while(true) {
min.increase();
if (min.getValue() == 0) {
hour.increase();
}
System.out.printf("%02d:%02d\n",hour.getValue(),min.getValue());
}
}
public static void main(String args[]){
Clock clock=new Clock();
clock.Run();
}
}
我们创建了一个display的类和一个clock的类用于显示小时和分钟,然后用这个类实例化出两个对象 小时和分钟,将这两个对象放在clock类里面作为成员变量,我们在clock类里面完成钟表的“组装”,让他们在这里交互。