Java小白的入门之路

一、JDK环境的配置

1、自己下载并安装JDK

2、环境变量配置

1、右键桌面上“我的电脑”>>“属性”,在弹出的页面上点击“高级系统设置”。
在这里插入图片描述
2、在弹出的“系统属性”窗口中“高级”标签页下点击“环境变量”按钮。
在这里插入图片描述
3、在弹出的“环境变量”窗口中,点击下方的“新建”按钮,在弹出的“新建系统变量”窗口中,新建一个名为“JAVA_HOME”的环境变量,变量值为Java的安装路径。本人路径为
在这里插入图片描述
4、设置Path环境变量,该变量已经存在,所以在列表中选择Path,点击下方的“编辑”按钮,在弹出的窗口中添加如下信息:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin,然后点击“确认”按钮即可。如图所示:
在这里插入图片描述

5、和JAVA_HOME一样,新建一个名为“classpath”的环境变量,变量值为:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar。如图所示:
在这里插入图片描述

6、在配置好环境变量后,可以进入cmd中检查Java是否安装正确,检查的命令为 java -version,如图所示:
在这里插入图片描述

二、基础语法

1.最简单输出格式

System.out.println("hello word");

2.标识符

(1)Java对各种变量、方法和类等要素命名时使用的字符序列称为标识符。凡是自己可以起名字的地方都叫表示符,都遵循表示符的规则。
(2)Java标识符命名规则:
标识由字母、下划线、美元符或数字组成。
标识符应以字母、下划线、美元符开头。
标识符大小写敏感,长度无限制。
(3)不成文规定:Java标识符选取应注意见名知意且不能与Java语言关键字重命名。
标识符举例:

合法标识符 非法表示符
HelloWorld class
DataClass DataClass#
_123 12.3
$xx Hello Word

3.关键字

(1)Java中一些赋以特定的含义,用作专门用途的字符串称为关键字。(大多数编译器都会将关键字用特殊方式标出)
(2)所有Java关键字都是小写字母
(3)goto 和 const虽然从未使用,但也被称为Java的关键字保留。

goto 关键字很早就在程序设计语言中出现。事实上,goto 是汇编语言的程序控制结构的始祖:“若条件 A,则跳到这里;否则跳到那里”。若阅读由几乎所有编译器生成的汇编代码,就会发现程序控制里包含了许多跳转。然而,goto 是在源码的级别跳转的,所以招致了不好的声誉。若程序总是从一个地方跳到另一个地方,还有什么办法能识别代码的流程呢?随着 Edsger Dijkstra 著名的“Goto 有害”论的问世,goto 便从此失宠。
————————————————
版权声明:本文为CSDN博主「淡紫色呼吸」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jinghuayuanli/article/details/16844765

(4)Java关键字一览表
在这里插入图片描述

4.常量

Java的常量值用字符串表示,区分为不同的数据类型:
(1)整型常量如123
(2)实型常量(浮点数)3.14
(3)字符常量’ a’
(4)逻辑常量true,false
(5)字符串常量"HelloWorld"
注、要区分字符常量和字符串常量,字符常量用单引号,字符串常量用双引号。

5.变量

(1)Java变量是程序中最基本的存储单元,其包括变量名、变量类型和作用域。
(2)Java程序中每一个变量都属于特定的数据类型,在使用前必须对其声明。例如:

扫描二维码关注公众号,回复: 11555523 查看本文章
int i = 100;
float j = 3.14f;//在Java中声明float类型时常量后面必须带f,否则编译器会将该变量当成double类型来处理
double h1,h2,h3=3.14;
String s = "HelloWord"

(3)从本质上讲,变量其实是内存中的一小块区域,使用变量名来访问这块区域,因此,每个变量使用前必许先声明,然后必须进行赋值来填充内容,最后才能使用。
(4)变量类型
*按被声明的位置分:
局部变量:方法或语句块内定义变量,方法体内部是指与方法对应的大括号内部。
成员变量:方法外部、类的内部第一的变量。
*按所属数据类型分:
基本数据类型变量。
引用数据类型变量。
a)基本数据类型
在这里插入图片描述
a_1逻辑类型boolean
boolean类型适用于逻辑运算,一般用于程序流控制,其只允许取值true或false,不可以取0或非0的整数代替true或false,这一点和C语言不同。
a_2字符型char
字符型常量为用单引号括起来的单个字符,例如:

char a = 'b'; char c = '国'

Java字符采用Unicode编码,每个字符占两个字节,因而可以用十六进制编码形式表示,例如:

char = '\u0061'//其中Unicode是全球语言同意编码

Java语言中还允许使用转义字符’ \ '来将其后的字符转变成其他的含义,例如:

char e = '\n'//其中‘\n’代表换行符 

a_3整数类型
*Java各整数类型有固定的表示范围和字符长度,其不受具体操作系统的影响,以保证Java的可移植性。
*Java语言整形常量的三种表示形式:
十进制整数,如123,0,325
八进制整数,要求以0开头如0123
十六进制整数,要求以0x或0X开头,如0x123
*Java语言的整形常量默认为int型,声明long型常量可用在后面加‘l’或‘L’,如:

long i = 500l;
long i2 = 33333333333L;后面必须加L,否则出错。

*Java整型的适用范围如下表所示:
在这里插入图片描述
a_4浮点类型
a)与整数类型类似,Java浮点型有固定的表数范围和字段长度,不受平台影响,
b)Java浮点数类型常量有两种表数形式:
I.十进制数形式,如3.14、314.0、314
II.科学技术法形式,如3.14e2、3.14E2、100E-2
III.Java浮点型常量默认为double型,如要声明一个常量为float型,则需在数字后面加f或F,如:

double d = 123.456;
float f = 123.456f;//后面必须加f或F,否则出错。

*Java浮点型的适应范围如下表所示:
在这里插入图片描述
b)基本类型转换
b_1boolean类型不可以转换为其他数据类型。
b_2整型、字符型、浮点型的数据在混合运算中相互转换,转换时遵循一下原则:
*容量小的类型自动转换为容量大的数据类型,数据类型按容量大小排序如下:
byte,short,char—>int—>long—>float—>double
其中byte,short,char之间不能互相转换,他们三者在计算时首先会转换为int类型。
*容量大的数据类型转换为容量小的的数据类型时要加上强制转换符,但可以造成精度降低或溢出,使用要格外注意。
*有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
*实数型常量默认为double。
*整数常量默认为int。
b_3类型转换举例
在这里插入图片描述
c)运算符
Java语言支持一下运算符:
算数运算符:+,-, * ,/,%,++,- -
关系运算符:>,<,>=,<=,==,!=
逻辑运算符:!,&,|,^,&&,||
位运算符:&,|,^,~,>>,<<,>>>
赋值运算符:=
扩展赋值运算符:+=,-=, * =,/=
字符串连接符:+
c_1自加自减运算符
在这里插入图片描述
c_2逻辑运算符:
逻辑非 !
逻辑与 &
逻辑或 |
逻辑异或 ^
短路与 &&
短路或 ||
在这里插入图片描述
&和&&:当且仅当 a、b 都为 true 时,结果为 true ;
| 和 || : 当且仅当 a、b 都为 false 时,结果为 false ;
^ : a 与 b 相异时,结果为 true ;
注意:逻辑运算符操作的都是boolean类型的变量,而且结果也是boolean类型。
在这里插入图片描述

逻辑运算符实例:
在这里插入图片描述
c_3赋值运算符和扩展赋值运算符
*当 “=” 两侧数据类型不一致时,可以使用默认类型转换或使用强制类型转换原则进行处理。注:可以将整型常量直接赋给byte、short、char等类型变量,而不需要进行强制转换,只要不超过其表示范围。
*扩展赋值运算符如下表所示:
在这里插入图片描述
c_4字符串连接符
*“ + ”除了用于算术加运算以外,还可以用于对字符串进行连接操作。如:

int = 1 + 3;
String s = "Hello" + "World";

*“ + ”运算符两侧的操作数中只要有一个是字符串类型,系统会自动将另一个操作数转换为字符串然后再进行链接。
c_5表达式
表达式是符合一定语法规则的运算符和操作数的序列。
表达式的类型和值:
|.对表达式中操作数进行运算得到的结果称为表达式的值。
||.表达式值的数据类型即为表达式的类型。
表达式的运算顺序:
|.应按照运算符的优先级从高到低的顺序进行。
||.优先级相同的运算符按照事先约定的结合方向进行。
表达式优先级书下图所示:
在这里插入图片描述
c_6三目条件运算符
三目条件运算符格式:x?y :z
其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算结果为表达式y的值,否则整个运算结果为表达式z的值。
三目运算符的简单实例:
在这里插入图片描述

6.语句

6.1 if语句和switch语句
6.1.1 if语句:
在这里插入图片描述
6.1.2 if语句举例如下:
在这里插入图片描述
6.1.3 switch语句:
在这里插入图片描述

注:case语句后一般要加break;语句;多个case可以合并在一起;default可以省略,但不推荐这样做;Java中switch语句只能探测int类型值。
switch语句举例:
在这里插入图片描述

6.2 for循环语句

6.2.1 for循环语句形式:
for(表达式1;表达式2;表达式3){语句;…}
其执行过程:首先计算表达式1,接着执行表达式2,若表达式2的值为true。则执行语句接着计算表达式3,再判定表达式2的值;依次重复执行下去,直到表达式2的值为false。
注:for语句的三个表达式都可以省略。

for(;;){

}

6.2.1 for循环语句举例:
在这里插入图片描述

6.3 while语句和do-while语句

6.3.1 while语句
语句形式:
while(循环条件){
执行内容
}
执行过程:先判断循环条件,如果等于true则执行其后面的语句,然后再次判断条件并反复执行,直到条件不满足为止。
6.3.2 do-while语句
语句形式:
do{
执行内容
}while(循环条件)
执行过程:先执行内容,在判断循环条件为是否true,否则运行结束。
6.3.3 while语句和do-while语句举例:
在这里插入图片描述

6.4 break语句和continue语句

6.4.1 break语句
break语句用于终止某个语句块的执行,用在循环体语句中,可以直接跳出循环。
break简单举例:
在这里插入图片描述
break还可以加“名字”跳出循环;
在这里插入图片描述
这里就是在break后面加上了OUT,break返回的名字必须是大写!!!
6.4.2 continue语句
continue语句用在循环体内,用于终止某次循环过程(这里和break语句不同,break是直接跳出循环,而continue是跳过这一次循环两者有很大不同),跳过循环体中continue语句下面执行的循环,并开始下一次循环过程。
continue语句举例:
在这里插入图片描述

三、类与对象

1、面向对象基础(上)

1.1用类制造对象:
对象是实体,需要被创建,可以为我们做事情。
类是规范,根据类的定义来创建对象

1.2面向对象的三种特点:封装性、继承性、多态性
封装性
封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现的细节,这就是封装思想。
继承性
继承性主要描述的是类与类之间的关系,通过继承,可以在无需重新编写代码原有类的情况下,对原有类的功能拓展。
多态性
多态性指的是在程序中允许出现重名的现象,它指在一个类中定义的属性和方法被其他类继承后,他们可以具有不同的数据类型或表现出不同的行为,这使得同一个属性和方法在不同得类中具有不同的语义。
面向对象的思想是只靠上面的介绍是无法真正理解的,只有通过大量的实践去学习和理解,才能将面向对象真正领悟。

1.3类的定义
在面向对象的思想中,最核心的就是对象。为了在程序中创建对象,首先需要定义一个类。
类是对象的抽象,它用于描述一组对象的共同特征和行为。类中可以定义成员变量和成员方法,其中成员变量用于描述对象的特征,也被称作属性;成员方法用于描述对象的行为,可简称为方法。
实例如下图:
在这里插入图片描述
其中,Preson是类名,age是成员变量,speak()是成员方法。
在成员方法speak()中可以直接访问成员变量age。

在这里插入图片描述
上面的代码中,在preson类的speak()方法中有一条打印语句,访问了变量age,此时访问的是局部变量age。也就是说,当有另外一个程序来调用speak()方法时,输出的值为60,而不是10。

1.4对象的创建与使用
应用程序想要完成具体的功能,仅有类是远远不够的,还需要根据类创建实例对象。
在Java程序中可以使用new关键字来创建对象,格式如下:

类名 对象名称 = new 类名();

例如,创建Person类的实例对象代码如下。

Person p = new Person();

1.5方法
方法的定义格式

public static void 方法名称(){
	方法体
}

调用格式

方法名称();

注意事项:

  1. 方法定义的先后顺序无所谓。
  2. 方法定义必须是挨着的,不能在一个方法的内部定义另外一个方法。
  3. 方法定义之后,自己不会执行的;如果希望执行,一定要进行方法的调用。

方法实例

public class Demo01Method{
	public static void main(String[] args){
		printMethod();
	}
	public static void printMethod(){
		for(int j = 0;j<5;j++){
			for(int i = 0;i<20;i++){
				System.out.print("*")
			}
		}
	}
}

猜你喜欢

转载自blog.csdn.net/m0_46363470/article/details/105716241
今日推荐