引言
想知道我大三是如何通过一个月时间自学Java,然后顺利找到实习工作的吗?如果你也想学习Java,学习一门语言,并且找到一份好的实习工作,那就学习以下的Java内容吧。文末有惊喜喔,记得点赞收藏喔!
第一个Java程序
下面演示如何创建、编译以及运行第一个程序:
- 打开代码编辑器(记事本,Ecplise,IDEA任何一个都可以),输入以下代码。
- 保存文件,并且命名为HelloWorld.java。
- 打开 cmd 命令窗口,进入目标文件所在的位置,使用 javac HelloWorld.java 命令编译源文件。
- 再输入 java HelloWorld 命令运行程序,即可输出字符串。
// 第一个Java程序
public class HelloWorld {
// 定义一个方法,它的功能是在电脑屏幕输出字符串 Hello World
public static void main(String[] args) {
System.out.println("Hello World"); // 输出 Hello World
}
}
Java运行机制
- 首先需要创建java文件,例如上述的HelloWorld.java,文件内容定义一个主类,然后类里面顶一个main主方法,作为程序的执行入口。
- 使用JDK的javac命令编译源文件(即HelloWorld.java),生成字节码文件(HelloWorld.class)。
- 使用JDK的java命令启动虚拟机(JVM),JVM启动后会加载启动类加载器ClassLoader,启动类加载器会读取本地磁盘上某个位置上的字节码文件,然后执行运行字节码文件。
上述说启动类加载器会加载读取磁盘上的字节码文件,那它怎么知道去哪里查找呢?默认情况下,会在当前目录下加载字节码文件,如果配置了环境变量classpath(注意,classpath属于java语言的环境变量,而path是属于操作系统的变量),classpath指定了类加载器加载字节码文件的位置。所以我们classpath会优先配置当前目录,也就是点号.
,然后再配置JDK一些核心库类的位置,如下:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib
基本语法
- 大小写敏感:Java 是大小写敏感的,也就是 HelloWorld 和 helloworld 是不同的标识符。
- 至少有一个类:源文件中,至少定义一个类(class),并且类名的首字母推荐大写,例如 HelloWorld.java。
- 类中可以定义属性和方法:再Java中,属性和方法是定义在类中的,属性名和方法名推荐使用首字母小写。
- 主方法入口main:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。
- 源文件名:源文件名必须和类名相同,并且后缀为 .java。
Java 关键字
Java中,已经定义了一个关键字,我们自己定义的标识符不能和关键字相同,所有关键字如下:
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
Java 标识符
除了Java自带的关键字,我们还可以定义自己的标识符,在Java 中,所有的组成部分都需要名字,类名、变量名以及方法名都被称为标识符。定义标识符需要遵循一些规则:
- 标识符可由字母(A-Z 或者 a-z),美元符号($),数字和下划线(_)组成,并且只能以开始字母,$或则_开始。
- 关键字不能用作标识符
- 标识符是大小写敏感的
- 标识符应该尽量见名知意
Java 修饰符
在Java中,可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:
- 访问控制修饰符 : default, public , protected, private
- 非访问控制修饰符 : final, abstract, static, synchronized
Java 注释
在Java中,有三种注释,注释主要用于对程序代码的解释说明,是给人看的,程序是不识别的。
/**
* 第一个程序,定义一个类
* 这是文档注释
*/
public class HelloWorld {
/*
* main方法,作为程序的入口
* 这是多行注释
*/
public static void main(String[] args) {
// 输出一行字符串,这是单行注释
System.out.println("Hello World");
}
}
Java 基本数据类型
在Java中,有许多数据,每一个数据都是有相关类型的,并且不同的数据类型占用的内存空间不一样。所以数据类型的作用就是告诉JVM在运行程序的时候给数据分配多大的内存空间。内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。
在Java中,有两种数据类型:
- 基本数据类型
- 整数型:byte,short,int,long
- 浮点型:float,double
- 布尔型:boolean
- 字符型:char
- 引用数据类型
- 类
- 接口
- 数组
- 枚举
- 字符串
Java 变量
变量本质是值内存中的一块空间,这块内存空间有数据类型,有名字,有字面值。我们通过变量来定义一个数据,变量是内存中存储数据的最基本单元。
所有的变量在使用前必须声明。声明变量的基本格式如下,type为Java数据类型。identifier是变量名。可以使用逗号隔开来声明多个同类型变量。
type identifier [ = value][, identifier [= value] ...] ;
int a, b, c; // 声明三个int型整数:a、 b、c
int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值
byte z = 22; // 声明并初始化 z
String s = "我是字符串"; // 声明并初始化字符串 s
double pi = 10.562; // 声明了双精度浮点型变量 pi
char x = 'x'; // 声明变量 x 的值是字符 'x'。
Java语言支持的变量类型有:
- 类变量:独立于方法之外的变量,用 static 修饰。
- 实例变量:独立于方法之外的变量,不过没有 static 修饰。
- 局部变量:类的方法中的变量。
public class Variable{
static int allClicks=0; // 类变量
String str="hello world"; // 实例变量
public void method(){
int i =0; // 局部变量
}
}
Java 运算符
在Java中,提供了一套丰富的运算符来操作变量,进行变量,数据间的运算。
- 算术运算符:加法+,减法-,乘法*,除法/,取余%,自增++,自减–
- 关系运算符:等于==,不等于!=,大于>,小于<,大于等于>=,小于等于<=
- 位运算符:与操作&,或操作|,取非^,取反~,按位左移运算符<<,按位右移运算符>>,按位右移补零操作符>>>
- 逻辑运算符:逻辑与运算符&&,逻辑或操作符||,逻辑非运算符!
- 赋值运算符:赋值运算符=
- 三元运算符:三元运算符也称为条件运算符,?:,例如 b = (a == 1) ? 20 : 30。
Java 循环结构
顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,,就需要使用循环结构。
Java中有三种主要的循环结构:
- while 循环
- do…while 循环
- for 循环
while 循环,当while括号中的表达式为真(true)时,执行循环内存,直到表达式为假(false)时,退出循环
while( 布尔表达式 ) {
//循环内容
}
do…while 循环,如果满足条件,则进入循环,如果不满足条件,则退出循环。do…while 循环至少会执行一次。
do {
//循环内容
}while(布尔表达式);
for循环,比较常用的循环用法,并且可以控制按指定的次数循环,即for循环执行的次数是在执行前就确定的。
for(初始化; 布尔表达式; 更新) {
//循环内容
}
public class HelloWorld {
public static void main(String[] args) {
String[] arr = new String[]{
"aa", "bb", "cc"};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
break 关键字
break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。break 跳出最里层的循环,并且继续执行该循环下面的语句。
public class HelloWorld {
public static void main(String[] args) {
String[] arr = new String[]{
"aa", "bb", "cc"};
for (int i = 0; i < arr.length; i++) {
// i等于2时,退出循环
if (2 == i) {
break;
}
System.out.println(arr[i]);
}
}
}
// 输出 aa bb
continue 关键字
continue 也是用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
public class HelloWorld {
public static void main(String[] args) {
String[] arr = new String[]{
"aa", "bb", "cc"};
for (int i = 0; i < arr.length; i++) {
if (1 == i) {
// 跳过此次循环,继续下一次循环
continue;
}
System.out.println(arr[i]);
}
}
}
// 输出 aa cc
Java 条件语句
在程序中,有时我们想当表达式符合某个要求时,才执行一段代码,不符合时、执行另一段代码,这时可以用 if else 条件语句。
if(布尔表达式)
{
//如果布尔表达式为true将执行的语句
}
public class HelloWorld {
public static void main(String[] args) {
int a = 5;
if (a < 20) {
System.out.print("a小于20,所以执行这行语句");
} else {
System.out.println("a不小于20,则执行这行语句");
}
}
}
Java 数组
Java 语言中提供的数组是用来存储固定大小的同类型元素。我们可以声明一个数组变量,来存储多个相同类型的数据。
声明数组,数组需要声明才可以使用,以下2种方式都可以声明一个数组,dataType是数组的类型,arrayRefVar是数组的名字,推荐用第一种:
dataType[] arrayRefVar; // 首选的方法
dataType arrayRefVar[]; // 效果相同,但不是首选方法
以下是一个示例,定义一个double类型的数组和一个String类型的数组:
double[] doubleList;
String[] stringList;
创建数组,使用new关键字来创建数组
dataType[] arrayRefVar = new dataType[arraySize];
以下是创建一个长度为10的字符串数组
String[] arr = new String[10];
使用数组,我们通过数组下标来使用数组的每一个元素
String[] arr = new String[10];
arr[0] = "你好!";
System.out.println(arr[0]);
全套Java教程
因为Java涉及内容较多,篇幅较大,就不一一列出所有内容。我在大学时候,通过一套视频教程自学一个月时间,然后找到了第一份实习。这套Java视频内容很全,很时候小白入门学习(0基础入门),学完你会完全掌握Java,并且找到一家公司实习是没问题的。在大学就应该要好好珍惜学习的机会,提升自己,才能为以后找到好的工作。
以上是我学习的Java教程,地址:https://www.bilibili.com/video/BV1Rx411876f
下载地址: http://www.bjpowernode.com/javavideo/110.html?csdncp
如果你坚持学完这套Java教程,你会爱上Java,有了Java基础知识,你就能再进阶学习深入点的Java知识,Java框架等等。学习一门语言。基础是最重要的,只有完全掌握了基础知识,才能去学习一些深入的内容,融会贯通。
转载:https://blog.csdn.net/chenlixiao007/article/details/116721942