关于java:爱了Java知识点最强总结美女学姐带你入坑网友感叹真香

2次阅读

共计 5974 个字符,预计需要花费 15 分钟才能阅读完成。

今日分享开始啦,请大家多多指教~

Java 是一种风行的编程语言,创立于 1995 年;运行 Java 的设施超过 30 亿台。Java 能够在不同的平台上运行(Windows、Mac、Linux、Raspberry Pi 等)。它是世界上最风行的编程语言之一;学习 Java 的基础知识,从无到有!

​正文

平时咱们编写代码,在代码量比拟少的时候,咱们还能够看懂本人写的,然而当我的项目构造一旦简单起来,咱们就须要用到一个正文了,正文就相似于咱们上学时候写的笔记,咱们看着笔记就晓得本人写的什么货色了!在程序中也是如此。咱们来看一下 Java 中的正文怎么写,看以下代码:

/*
* @Description HelloWorld 类
* @Author Diamond 狂神 QQ:24736743
**/
public class HelloWorld {
/*
这是咱们 Java 程序的主入口,main 办法也是程序的主线程。*/
public static void main(String[] args) { 
// 输入 HelloWorld!System.out.println("Hello,World!");
 }
 }

正文并不会被执行,是给咱们写代码的人看的,书写正文是一个十分好的习惯,在很多大公司都是强制要求各位去进行编写正文!比方,咱们的 BAT 三大巨头等等.

Java 中的正文有三种:
单行正文:只能正文以后行,以 // 开始,直到行完结

1 // 输入 HelloWorld!

多行正文:正文一段文字,以 / / 完结!

1 /*
2 这是咱们 Java 程序的主入口,
3 main 办法也是程序的主线程。
4 */

文档正文:用于生产 API 文档,配合 JavaDoc。

【注】文档正文咱们当初只作为理解,在学习 JavaDoc 时候咱们会具体给大家说, 目前晓得有这样的正文就好。

1 /*
2 * @Description HelloWorld 类
3 * @Author Diamond 狂神 QQ:24736743
4 **/

倡议平时写代码肯定要留神正文的规范性,一个好的程序员,肯定是有十分良好的编码习惯的,我心愿大家可能从小事开始锤炼本人的行为习惯!

标识符

每个人从出世开始就有一个名字,咋们生存中的所有事物也都有名字,这名字是谁规定呢?答复是:造物主,谁生产进去的谁规定名字,在咱们的程序中也不例外。

咱们作为造物主,须要给所有的货色给上一个名字,比方咱们的 HelloWorld 程序:
HelloWorld 是类名,也是咱们的文件名。它后面的 public class 是关键字,不过是搞 Java 那群人曾经定义好的有特殊作用的,上面的每一个代码都有本人的意思和名字对吧,就是用来作辨别!和咱们的名字一样,拿来被叫或者称说的,程序所有都源自于生存,肯定要把学程序和生存中的所有分割起来,你会发现这一切都是非亲非故的。
咱们来看看有哪些是 Java 本人定义好的关键字呢?

这些看起来十分的多,然而随着咱们当前的学习咱们都会用到,所以齐全不必放心本人 看不懂,这些被 Java 曾经规定的关键字,咱们本人就不能拿它当做名字了!
Java 所有的组成部分都须要名字。类名、变量名以及办法名都被称为标识符。

咱们本人起名字有哪些要求呢?
示意类名的标识符用大写字母开始。

1 如:Man, GoodMan

示意办法和变量的标识符用小写字母开始,前面的描述性词以大写开始。

1 如:eat(),eatFood()
2 // 驼峰命名法

对于 Java 标识符,有以下几点须要留神:
所有的标识符都应该以字母(A-Z 或者 a-z), 美元符($)、或者下划线(_)开始
首字符之后能够是字母(A-Z 或者 a-z), 美元符($)、下划线(_)或数字的任何字符组合,不能应用关键字作为变量名或办法名。
标识符是大小写敏感的
非法标识符举例:age、$salary、_value、__1_value
非法标识符举例:123abc、-salary、#abc

【JAVA 不采纳通常语言应用的 ASCII 字符集,而是采纳 unicode 这样的规范的国内字符集。因而,这里的字母的含意:能够示意英文、汉字等等。】
【能够应用中文命名,然而个别不倡议这样去应用,也不倡议应用拼音,很 Low】

演示:非法标识符以及不非法标识符

数据类型

Java 是一种强类型语言,每个变量都必须申明其类型。

1、强弱类型语言
说到强类型语言,那什么是强类型语言呢?
强类型语言也称为强类型定义语言。要求变量的应用要严格符合规定,所有变量都必须先定义后能力应用。

Java、.NET、C++ 等都是强制类型定义的。也就是说,一旦一个变量被指定了某个数据类型,如果不通过转换,那么它就永远是这个数据类型了。

安全性高,运行效率绝对较慢,鱼和熊掌不可兼得!强类型定义语言在速度上可能略逊色于弱类型定义语言,然而强类型定义语言带来的严谨性可能无效的防止许多谬误。与其绝对应的是弱类型语言。

弱类型语言也称为弱类型定义语言。与强类型定义相同。像 vb,php 等就属于弱类型语言·在 VBScript 中,能够将字符串‘12’和整数 3 进行连贯失去字符串‘123’,也能够把它看成整数 123,而不须要显示转换。是不是非常的轻易,咱们 Java 就不是这样的。但其实它们的类型没有扭转,VB 只是在判断出一个表达式含有不同类型的变量之后,主动在这些变量前加了一个 clong()或(int)()这样的转换函数而已。能做到这一点其实是归功于 VB 的编译器的智能化而已,这并非是 VB 语言自身的短处或短处。

好了,到这里,咱们应该对强弱类型语言有了肯定的理解!咱们持续回到数据类型这个话题.

2、数据类型
Java 的数据类型分为两大类:根本类型(primitive type)和援用类型(reference type)
【注:援用数据类型的大小对立为 4 个字节,记录的是其援用对象的地址!】

如果你看到这一堆头疼的话,没关系,不必记,JDK 中类型对应的包装类都帮忙写好了,咱们须要时候能够间接看到!能够把以下代码拷贝进行查看后果:

public static void main(String[] args) {
// byte
System.out.println("根本类型:byte 二进制位数:" + Byte.SIZE);
System.out.println("包装类:java.lang.Byte");
System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);
System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);
System.out.println();
// short 
System.out.println("根本类型:short 二进制位数:" + Short.SIZE);
System.out.println("包装类:java.lang.Short");
System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);
System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);
System.out.println();
// int
System.out.println("根本类型:int 二进制位数:" + Integer.SIZE);
System.out.println("包装类:java.lang.Integer");
System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);
System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);
System.out.println();
 // long
System.out.println("根本类型:long 二进制位数:" + Long.SIZE);
System.out.println("包装类:java.lang.Long");
System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);
System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);
System.out.println();
 // float
System.out.println("根本类型:float 二进制位数:" + Float.SIZE);
System.out.println("包装类:java.lang.Float");
System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);
System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);
System.out.println();
// double
System.out.println("根本类型:double 二进制位数:" + Double.SIZE);
}
System.out.println("包装类:java.lang.Double");
System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);
System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);
System.out.println();
// char
System.out.println("根本类型:char 二进制位数:" + Character.SIZE);
System.out.println("包装类:java.lang.Character");
// 以数值模式而不是字符模式将 Character.MIN_VALUE 输入到控制台
System.out.println("最小值:Character.MIN_VALUE="
+ (int) Character.MIN_VALUE);
// 以数值模式而不是字符模式将 Character.MAX_VALUE 输入到控制台
System.out.println("最大值:Character.MAX_VALUE="
+ (int) Character.MAX_VALUE);
咱们理解了这些常识后,咱们本人定义一些变量来看!public static void main(String[] args) {
// 整型
int i1=100;
// 长整型
long i2=998877665544332211L;
// 短整型
short i3=235;
// 浮点型
double d1=3.5; // 双精度
double d2=3;
float f1=(float)3.5; // 单精度
float f2=3.5f; // 单精度
// 布尔类型 boolean true 真 /false 假
boolean isPass=true;
boolean isOk=false;
boolean isBig=5>8;
}
if(isPass){System.out.println("通过了");
}else{System.out.println("未通过");
}
// 单字符
char f='女';
char m='男';

【Java 语言的整型常数默认为 int 型,浮点数默认是 Double】

3、整型拓展
在咱们计算机中存在很多进制问题,十进制,八进制,十六进制等等的问题,他们怎么示意呢?

十进制整数,如:99, -500, 0。
八进制整数,要求以 0 结尾,如:015。
八进制整数,要求以 0 结尾,如:015。

4、浮点型拓展
【金融面试问:银行金融业务用什么类型示意?】

浮点类型float, double 的数据不适宜在不容许舍入误差的金融计算畛域。
如果须要进行不产生舍入误差的准确数字计算,须要应用 BigDecimal 类。

次要理由:
因为字长无限,浮点数可能准确示意的数是无限的,因此也是离散的。浮点数个别都存在舍入误差,很多数字无奈准确示意,其后果只能是靠近,但不等于;二进制浮点数不能准确的示意 0.1,0.01,0.001 这样 10 的负次幂。并不是所有的小数都能能够准确的用二进制浮点数示意。

最好完全避免应用浮点数比拟 !

大数值:Java.math 上面的两个有用的类:BigInteger 和 BigDecimal,这两个类能够解决任意长度的数值。BigInteger 实现了任意精度的整数运算。BigDecimal 实现了任意精度的浮点运算。

浮点数应用总结:

  1. 默认是 double
  2. 浮点数存在舍入误差,很多数字不能准确示意。如果须要进行不产生舍入误差的准确数字计算,须要应用 BigDecimal 类。
  3. 防止比拟中应用浮点数
    5、字符型拓展
    单引号用来示意字符常量。例如‘A’是一个字符,它与“A”是不同的,“A”示意一个字符串。
    char 类型用来示意在 Unicode 编码表中的字符。
    Unicode 编码被设计用来解决各种语言的所有文字,它占 2 个字节,可容许有 65536 个字符;

【科普:2 字节 =16 位 2 的 16 次方 =65536,咱们用的 Excel 原来就只有这么多行,并不是有限的】

Unicode 具备从 0 到 65535 之间的编码,他们通常用从’u0000’到’uFFFF’之间的十六进制值来示意(前缀为 u 示意 Unicode)
Java 语言中还容许应用转义字符‘’来将其后的字符转变为其它的含意,有如下罕用转义字符:

6、布尔型拓展
boolean 类型(一位,不是一个字节),就是 0 |1
boolean 类型有两个值,true 和 false, 不能够 0 或非 0 的整数代替 true 和 false,这点和 C 语言不同。
boolean 类型用来判断逻辑条件,个别用于程序流程管制。

类型转换

因为 Java 是强类型语言,所以要进行有些运算的时候的,须要用到类型转换。
整型、实型(常量)、字符型数据能够混合运算。

运算中,不同类型的数据先转化为同一类型,而后进行运算。
转换从低级到高级(依据容量来看)。

数据类型转换必须满足如下规定:
不能对 boolean 类型进行类型转换。
不能把对象类型转换成不相干类的对象。
在把容量大的类型转换为容量小的类型时必须应用强制类型转换。
转换过程中可能导致溢出或损失精度,例如:

因为 byte 类型是 8 位,最大值为 127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。

浮点数到整数的转换是通过舍弃小数失去,而不是四舍五入,例如:

小结
今日次要讲述了正文,标识符,数据类型,类型转换,这几种根底知识点;从 java 入门根底开始学习,越简略的货色,越不要疏忽,细节影响成败!

今日份分享已完结,请大家多多包涵和指导!

正文完
 0