从这里开始,正式进入正轨

1、关键字

 2、main

main是关键字吗? 不是,他只是一个标识符,只不过有点特殊,虚拟机可以识别。 main(主函数)的作用

1:可以保证程序的独立运行

2:是程序的入口

3:被java虚拟机所识别

注意:main方法不是必须要在类中定义的 如果想要运行这个类,则需要添加,否则不需要

3、标识符

在程序中自定义的一些名称。 由26个英文字母大小写,数字:0-9 符号:_ $ 组成 定义合法标识符规则: 1,数字不可以开头。 2,不可以使用关键字。

Java中严格区分大小写。 注意:在起名字的时候,为了提高阅读性,要尽量有意义。

Java中的名称规范:

包名:多单词组成时所有字母都小写。 xxxyyyzzz

类名接口名:多单词组成时,所有单词的首字母大写。 XxxYyyZzz

变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。 xxxYyyZzz

常量名:所有字母都大写。多单词时每个单词用下划线连接。 XXX_YYY_ZZZ

4、注释

用于解释程序功能的文字就是注释。 注释的作用 提高了代码的阅读性 可以帮助调试代码,把不确定的代码注释掉帮助排查问题

Java中的注释格式:

单行注释 格式: //注释文字

多行注释 格式: /* 注释文字 */

文档注释 格式:/** 注释文字 */

对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。 对于文档注释,是java特有的注释,其中注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档(说明书)。 注释是一个程序员必须要具有的良好编程习惯。 初学者编写程序可以养成习惯:先写注释再写代码。 将自己的思想通过注释先整理出来,在用代码去体现。 因为代码仅仅是思想的一种体现形式而已。

5、常量与变量

常量表示不能改变的数值。

Java中常量的分类:

1,整数常量。所有整数

2,小数常量。所有小数

3,布尔型常量。只有两个数值。true false。

4,字符常量。将一个数字、字母或者符号用单引号( ' ' )标识。单引号只能存储一个字符

5,字符串常量。将一个或者多个字符用双引号("")标识。字符串中的字符个数没有限制。

6,null常量。只有一个数值就是:null,这是一个特殊的常量

变量的概念: 内存中的一个存储区域 该区域有自己的名称(变量名)和类型(数据类型) 该区域的数据可以在同一类型范围内不断变化

为什么要定义变量: 用来不断的存放同一类型的常量,并可以重复使用 例如:假设我有两个常量,想对这两个常量进行加法运算,并且获取结果,后面还需要对这个结果进行其他处理,所以就需要把这个结果存储起来方便后面使用,存储的话就需要存储到一个变量里面

使用变量注意: 变量的作用范围(一对{}之间有效) 需要初始化值,否则无法使用

定义变量的格式: 数据类型 变量名(标识符) = 初始化值(常量);

注:格式是固定的,记住格式,以不变应万变。 理解:变量就如同数学中的未知数。

相同类型变量相加和不同类型变量相加 int + int 和 int + byte 的区别

自动类型转换(也叫隐式类型转换) int = int + byte 正确 byte = int + byte 错误

强制类型转换(也叫显式类型转换) byte = (byte)(int + byte) 什么时候要用强制类型转换?

表达式的数据类型自动提升 所有的byte型、short型和char的值将被提升到int型。

如果一个操作数是long型,计算结果就是long型; 如果一个操作数是float型,计算结果就是float型; 如果一个操作数是double型,计算结果就是double型。

自动类型转换是指:数字表示范围小的数据类型可以自动转换成范围大的数据类型。 byte < short < int < float < long < double

实线表示自动转换时不会造成数据丢失,虚线则可能会出现数据丢失问题。

强制类型转换我们再清楚不过了,即强制显示的把一个数据类型转换为另外一种数据类型。

自动类型提升 byte b = 3; int x = 4; x = x + b;//b会自动提升为int类型进行运算。

强制类型转换 byte b = 3; b = b + 4;//报错

b = (byte)(b+4);//强制类型转换,强制将b+4的结果转换为byte类型,再赋值给b。

总结:小的往大的运算,自动类型提升;大的往小的运算,强制类型转换

System.out.println(‘a’)与System.out.println(’a’+1)  (单引号表示一个字符,自动转化成ASCALL码)

System.out.println(“a”+1)与System.out.println(“a”+1+1)

注意:字符串和任何数据做+运算,都不是加法的含义,这个+号是一个连字符,任何数据和字符串相连接,都会变成一个新的字符串 单引号是代表字符 而不是字符串,'a'.

问题:下面哪句会编译失败? int x,y,z; z=x+y;//编译时无法确定b1 和b2的值 数据类型相同加一起会超出所在类型 b=3+4;//编译时就可以确定3+4的值

大数据之路day01_3--JAVA语言基础(1)的更多相关文章

  1. 大数据全栈式开发语言 – Python

    前段时间,ThoughtWorks在深圳举办一次社区活动上,有一个演讲主题叫做“Fullstack JavaScript”,是关于用JavaScript进行前端.服务器端,甚至数据库(MongoDB) ...

  2. 为什么说Python 是大数据全栈式开发语言

    欢迎大家访问我的个人网站<刘江的博客和教程>:www.liujiangblog.com 主要分享Python 及Django教程以及相关的博客 交流QQ群:453131687 原文链接 h ...

  3. java语言基础02

    一.Java语言基础(常量的概述和使用)(掌握) 1:什么是常量 就是在程序的执行过程中其值不发生改变的量. 2:Java中常量的分类 (1):字面值常量 (2):自定义常量(面向对象部分讲解) 3: ...

  4. Java之--Java语言基础组成—数组

    Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...

  5. Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)

    Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...

  6. Java语言基础(七)

    Java语言基础(七) 今天在公司多呆了会,回来晚了 一.自动类型转换 在Java中,数据是可以转换的  例如可以将byte类型的赋给int类型的 这里希望你了解内存的变化,例如 在这里,我想你应该知 ...

  7. 第二十一节:Java语言基础-关键字,标识符,注释,常量和变量,运算符

    Java语言基础-关键字,标识符,注解,常量和变量,运算符 class Demo { public static void main(String[] args){ System.out.printl ...

  8. 【Java初探02】——Java语言基础

    本篇博文就Java语言的一些基本元素进行一些记录和阐述,主要讲解一下Java语言的一些基本构成元素和Java的主类结构. Java语言基础的大致组成 java主类结构 基本的数据类型 变量与常量 运算 ...

  9. day05<Java语言基础--数组>

    Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java ...

  10. day04<Java语言基础+>

    Java语言基础(循环结构概述和for语句的格式及其使用) Java语言基础(循环结构for语句的练习之获取数据) Java语言基础(循环结构for语句的练习之求和思想) Java语言基础(循环结构f ...

随机推荐

  1. 【JZOJ5264】化学

    Description Input Output Sample Input 3 10 1 2 10 Sample Output 5 Hint   题解: 这个题目通过30%部分分的提示,我们可以猜出这 ...

  2. Windows系统调用中的现场保存

    Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html Windows系统调用中的现场保存 我们之前介绍过三环进零环的步骤 ...

  3. JavaScript ES6函数式编程(一):闭包与高阶函数

    函数式编程的历史 函数的第一原则是要小,第二原则则是要更小 -- ROBERT C. MARTIN 解释一下上面那句话,就是我们常说的一个函数只做一件事,比如:将字符串首字母和尾字母都改成大写,我们此 ...

  4. 前端Vue知识小白

    感觉是已好久没写博文了.今日难得有时间,便写一篇文章.此文章是关于前端知识的,我本身是后端,因工作或其他需要,便学习了前端Vue.此文章是在菜鸟教程上学习的.那么下面进入正文! 首先,Vue.js是一 ...

  5. JavaScript ES6函数式编程(二):柯里化、偏应用和组合、管道

    上一篇介绍了闭包和高阶函数,这是函数式编程的基础核心.这一篇来看看高阶函数的实战场景. 首先强调两点: 注意闭包的生成位置,清楚作用域链,知道闭包生成后缓存了哪些变量 高阶函数思想:以变量作用域作为根 ...

  6. PowerSploit-CodeExecution(代码执行)脚本渗透实战

    首先介绍一下国外大牛制作的Powershell渗透工具PowerSploit,上面有很多powershell攻击脚本,它们主要被用来渗透中的信息侦察.权限提升.权限维持. 项目地址:https://g ...

  7. Redis Getshell总结

    Redis默认端口是6379,可以通过zoomeye或者shodan来查找开放6379的端口,能收到很多对外开放6379端口的ip,而且绝大部门是未授权访问的,因为默认redis是未授权访问.但是还有 ...

  8. #10056. 「一本通 2.3 练习 5」The XOR-longest Path

    题目描述 有一棵带权树,求这些边组成的路径的最大异或和. Solution 考场 SPFA 神奇 70 分代码 #include<cstdio> #include<cstdlib&g ...

  9. java架构之路-(Redis专题)简单聊聊redis分布式锁

    这次我们来简单说说分布式锁,我记得过去我也过一篇JMM的内存一致性算法,就是说拿到锁的可以继续操作,没拿到的自旋等待. 思路与场景 我们在Zookeeper中提到过分布式锁,这里我们先用redis实现 ...

  10. thinkcmf5 支付宝接口操作

    这是我自己摸索再结合网上搜索的一大堆内容搞出来的,官方的文件对于新手来说很难理解,什么文件放什么位置,该怎么引用,都要一一尝试,我这就直接列出来了,照样放就是了.同样适用于tp5,我这个也是tp5的 ...