最近加入了学校的实验室,十分开心,开心之余,收到了实验室的第一个任务————用Java写一个学生管理系统,完成工作并使自己的生活更加充实,博主在bilibili自学了Java,下面是博主这几天的学习成果,希望能对同样是自学Java的你也能有所帮助!
链接:https://pan.baidu.com/s/13PVW3Ax6PdFWtNYvqss7Zw 提取码:81lg JDK是博主在网上找的网盘资源,各位读者可以去博主的百度云盘自提 具体安装教程因为较为复杂,各位读者在b站搜索eclipse就能搜索到,在这里就不进行赘述了
如何正确安装开发环境,一直是学习Java的第一道门槛,欲要善其工,必先利其器。在这里,博主推荐同样自学的新手朋友们去使用eclipse,这并不是说eclipse比idea要好很多,而是现在网络上的Java课程,大多数都是使用eclipse进行教学,并且eclipse在官网进行下载为免费(idea据说得花钱购买),当然硬要说用百度云下载idea学习版,除非你有百度网盘的超会,不然下载速度你懂的(手动滑稽)。下面附上eclipse官网网址: https://www.eclipse.org/downloads/ ①打开界面 ②选择打包下载(Download Packages) ③点开后会出现一个这样的界面 ④在这个地方选择合适你电脑配置的包进行下载 下载之后,将包解压的你自己想存放的位置即可。
双击eclipse.exe,启动Eclipse(为了以后方便可以在桌面创建eclipse的快捷方式),如下图所示:
例如,起个名字叫 Hello (注意:最好不要起中文字名)
点“Next”,
保持默认不变。点“Finish”按钮。
将左侧窗口Package Explorer展开,并将欢迎窗口Welcome关闭。主界面如下图所示。
在左侧的Package Explorer窗口,右键点击src,在右键菜单里选择“New | Package”,如下图所示。 输入Package的名字。例如,输入 my ,如下图所示 点“Finish”按钮,
在左侧窗口里,右键点 my ,在右键菜单里执行“New | Class”,如下图所示。
-输入类名Name(英文或拼音均可), 例如,输入 HelloWorld -勾选“public static void main (String[] args)” 如下图所示: 点“Finish”按钮。
可以看到Eclipse为我们创建一个HelloWorld.java的代码文件。如下图所示。
在右侧的代码编辑窗口中,添加一行代码: package my;
public class HelloWorld {
public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("世界 ,你好!"); }}
在中间的代码编辑窗口里,右键菜单,执行“Run As | Java Application” 在下方的Console窗口里,观察程序的输出,如下图。
(1)打印输出功能:System.out.println(“xxxxxx”); (2)拼接后输出:System.out.println( “我是徐同学, 今年” + 19 + “岁” );
字符串 + 字符串 ,如 , “hello” + “世界” 字符串 + 数字 ,如, “分数:” + 100 混合拼接,如, “数学:” + 150 + “, 英语:” + 150 当我们写完之后,可以CTRL + S 保存当前代码
以双斜杠开头的行,称为注释 增加代码后,对代码本身的运行没有任何影响,但是通常可以使代码的可读性大大增加,使别人更容易读懂你的代码 小技巧:CTRL + / 可以对所选的行快速注释 注意:先切换到英文输入状态
空白:换行,空格,制表符(TAB)
程序里的 空白 基本不影响程序本身,仅影响可读性 注:空白一般可以任意添加,但不能乱加,尤其不能在一个词的中间加,那是显示不行的
小技巧:CTRL + SHIFT +F ( 菜单 source | format)
由于内容和c++基本一致,所以在这里,仅对不同处进行记录
int 、double 、float 、char、String、boolean
在Java里,有4种类型可以表示整数。分别为byte、 short 、 int 、long 例如: byte a = 3; short b = 3000; int c = 3000000; long d = 300000000000000L;
为什么要发明4种类型呢?主要是为了节省内存的考虑。如果内存对人类是无限够用的,那么直接使用int或long就够了。 byte所占的内存小,只能表示 -128~127 之间的整数 short表示范围: -32768 ~ 32767 int表示范围: -231 ~ 231-1 (约正负20亿) long 表示范围: 天文数字,非常大
通常来说,当你要表示的数字范围比较小时,可以选用byte 或 short。例如,表示年份时可以用short。 short year = 2017; 但是,其实对我们程序员来说,都用int也没太大问题。尤其对于初学者来说,用int和long就够了。
浮点型也有两种:double 与 float ,其中,float的表示能力要小一些。 double a = 12293.348934; float b = 343.394; // 能表示的有效数字要少一些
同样的,对于初学者来说,我们用double就可以了。
变量就能变化的量。常量就是不能变的量。在前面加上一个关键字final,表示这是个常量。
例如, final double PI = 3.1415; // 圆周率 double r = 12.3; // 半径 double area = PI * r * r; // 面积 显然,在程序里面PI是一个不变的量,称为常量。用final前缀来修改。而r和area都是变量。
(1) boolean的值只有true和false,boolean的变量无法进行加减 (2) String的S大写 (3) boolean值可以直接用println的印输出,输出显示为 true 或者 false boolean sex = true; System.out.println("性别: " + sex);
与c++一致
在函数内以分号结束的一行,称为语句 statement 空语句: 单独的分号,构造一条语句。 复合语句:由一对大括号组合在一起的语句。 注:注释不算一行语句
使用单步调试技术,可以使得程序的运行可以观测。 具体步骤: 1 加断点 , 加在第一条语句上 2 右键 Debug As | Java Application 3 F6 , 一步一步执行 每走一遍,观察变量的值的改变。
break语句: 终止循环 continue语句:跳过本轮循环 (继续下一轮)
(1)数组对象 在Java语言里,数组对象可以表示一组数字。 例如, int[ ] arr = new int [ 30 ] ;(与c++不同)
创建一个数组对象(Array Object),长度为30,存储的数据类型为int。 变量名称: arr 变量类型: int[] (即数组对象) 数据长度: 30, 即容纳30个数 (2)数组的遍历 从头到尾、挨个访问 int[] arr = { 98, 89, 98, 87 }; for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); }
(3)数组的初始化 ①如果已知数组的初始值,那么可以这么写: int[] arr = { 98, 89, 98, 87 } ; ②默认的,当数组用 new 创建时,所有元素的值为0 例如, int[] a1 = new int[4]; double[] a2 = new double[4]; (4)数组的长度 int[] arr = { 98, 89, 98, 87 }; for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } 其中,arr.length 表示是数组 arr 的长度。
在Java语言里,对象Object是一个基础概念。 int[] a = new int[4];
等号右侧(new int[4]):创建了一个数组对象 等号左侧(int[] a): 变量 a 称为该对象的引用( Reference)
称作: 变量a 指向了一个对象 有时也简称为:a是一个对象, 或a是对象的名字
结果:a 指向了一个对象 b 和 a 指向相同的对象
a和b都是该对象的引用用a可以操作目标对象,用b也可以操作目标对其中,a和b指向了同一个数组对象,把a,b 称为对象的引用。这就好比,你就是一个对象,“小王”、“王小帅” 则是对你的引用。当我们想引用你时,就使用“小王”或“王小帅”,这两个名字引用的是同一个对象。
其中,a先是指向了一个数组对象,后又设为了null。当a设为null时,表示a不引用任何对象。null 称为空对象。
这就好比,“老王”是一个人的名字,后来这个人死了。如果还想找“老王”还钱,就会产生系统异常,因为“老王”这个名字不引用任何对象了。
在这里,a已经成为null,后面还想对它遍历,在运行时会报告 NullPointerException 空指针错误。因为a已经不引用任何对象,你还想访问它的内容??它就是个空气好吗!
这个错误在编译时检查不出来,所以没有红叉提示。但是一运行就报错了,所以它也是运行时错误。
package my; public class HelloWorld { public static void main(String[] args) { int[] a = { 11, 11, 11, 11 }; int[] b = a; b[3] = 45;//a和b皆是{11,11,11,45} int[] c = { 11, 11, 11, 11 }; int[]d= c; c= null; //c位null,d为{ 11, 11, 11, 11 } } }示例:
int [] a = new int[4]; a = new int[5]; a = new int[5]; System.out.println("exit");以上代码创建了3个对象,前两个对象失去引用