javaSE基础02

一、javac命令和java命令做什么事情?
javac:负责编译,当执行javac时,会启动java的编译程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节码文件,也就是class文件(java的运行程序)
java:负责运行的部分,会启动jvm加载运行时所需要的类库,并对class文件进行执行,一个文件要被执行,必须要有一个执行的起始点,这就是main函数

二、入口函数:
2.1权限修饰符
public:公开的,权限最大,任何情况下只能自己调用
private:私有的,权限最小,只能自己访问
protected:受保护的

2.2主函数为什么要这样写


class Demo{
  public static void main(String[] args){ //这个是固定写法
  System.out.println("hello world");
 } 
}

public:main主方法是由jvm调用的,jvm实际上也是一个程序,为了保证jvm能在任何情况下来调用主函数

static修饰:如果没有static修饰,就需要用到对象来调用主 方法,jvm如果创建对象的话不知道该创建什么样的对象,所以为了避免麻烦,就将方法定义为静态的,可以直接类名调用

void:主函数是由jvm调用的,因此返回值就是给jvm使用,jvm接收返回值没有意义,因此不需要返回值

main:不是关键字,main是已经被约定俗成的入口函数方法名

args:用来接收程序在运行时传递进来的参数

三、标识符
1.什么叫做自定义标识符
在java中,有些自定义的名字就叫做自定义标识符

2.标识符的命名规则
a)标识符的元素组成:字母、数字、下划线和美元符号
b)不能以数字开头
c)严格区分大小写
d)不能以关键字、保留字命名
e)标识符名称没有长短限制
f)标识符命名要有意义

关键字:其实就是某种语言赋予了特殊含义的单词。
保留字:其实就是还没有赋予特殊含义,但是准备日后要使用过的单词。

3.标识符命名规范
a)类名和接口名单词的首字母大写,其他小写
b)变量名和方法名的命名第一单词首字母小写,多个单词间使用驼峰标识
c)包名全部单词小写
d)常量全部单词大写,单词与单词之间用下划线隔开,比如:PI_2

四、注释
java中有三种注释:
  1.单行注释://
  2.多行注释:/* 注释的内容*/
  3.文档注释:/** 注释的内容*/

注释注意点:
多行注释中不能嵌套使用,单行注释可以

注释的作用:
  1.解释说明程序
  2.调试程序

五、数据类型

java中数据类型主要分为两种:
  1.基本数据类型:byte、short、int、long、float、double、char、boolean
  2.引用数据类型:数组、类、接口

数字类型:int (整型)float (单精度浮点型)double(双精度浮点型)
字符型常量:char 用单引号引起来
字符串常量:String 用双引号引起来
布尔值类型:boolean true / false
long: 长整型

级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double

六、 运算符号
1)、算术运算符。
+ - * / %
%:任何整数模2不是0就是1,所以只要改变被模数就可以实现开关运算。 +:连接符。 ++,--

2)、赋值运算符。
= += -= *= /= %=

3)、比较运算符。
特点:该运算符的特点是:运算完的结果,要么是true,要么是false。

4)、逻辑运算符。
  & | ^ ! && ||
逻辑运算符除了 ! 外都是用于连接两个boolean类型表达式。

&: 只有两边都为true结果是true。否则就是false。
|:只要两边都为false结果是false,否则就是true

^:异或:和或有点不一样。
  两边结果一样,就为false。
  两边结果不一样,就为true.

& 和 &&区别:
& :无论左边结果是什么,右边都参与运算。
&&:短路与,如果左边为false,那么右边不参数与运算。

| 和|| 区别:|:两边都运算。
||:短路或,如果左边为true,那么右边不参与运算。

数据类型中需要注意的点:
  1.凡是short、byte、char定义的变量,做运算时,自动变为int类型
  2.级别从低到高:short、byte、char(三者平级)--->int --->float--->long--->double

javaSE基础02的更多相关文章

  1. java学习之路之javaSE基础1

    <h2>java学习之路之javaSE基础1</h2> <div> ###01.01_计算机基础知识(计算机概述)(了解)* A:什么是计算机?计算机在生活中的应用 ...

  2. javaSE基础07

    javaSE基础07 一.static静态修饰符 用了static修饰的变量就会变成共享的属性,只会初始化一次,在内存中只存在一个,并且每个对象都可以访问,存放在方法区(数据共享区) 1.1 stat ...

  3. javaSE基础06

    javaSE基础06 一.匿名对象 没有名字的对象,叫做匿名对象. 1.2匿名对象的使用注意点: 1.我们一般不会用匿名对象给属性赋值的,无法获取属性值(现阶段只能设置和拿到一个属性值.只能调用一次方 ...

  4. javaSE基础05

    javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...

  5. javaSE基础04

    javaSE基础04 一.三木运算符 <表达式1> ? <表达式2> : <表达式3> "?"运算符的含义是: 先求表达式1的值, 如果为真, ...

  6. javaSE基础03

    javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...

  7. javascript基础02

    javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...

  8. JavaSE基础01

    JavaSE基础篇01 ------从今天开始,我就学习正式java了,O(∩_∩)O哈哈~,请大家多指教哦 一.Windows常见的dos命令 操作dos命令: win7 --->开始 --- ...

  9. javase基础复习攻略《十》

    按照计划本篇为大家总结JAVA的网络编程,什么叫网络编程呢?网络编程!=网站编程,对于这一点大家一定要注意,很多小朋友都曾经这么认为.既然谈到网络编程,咱们先了解一下网络的基础知识,什么是计算机网络? ...

随机推荐

  1. 【三石jQuery视频教程】03.创建垂直时间表(Timeline)

    视频地址:http://v.qq.com/page/g/i/o/g0150rvi6io.html 大家好,欢迎来到[三石jQuery视频教程],我是您的老朋友 - 三生石上. 今天,我们要通过基本的H ...

  2. 【.NET】Nuget包,把自己的dll放在云端

    //发布自己的nuget包,1.自己的api KEY,2.自己的类库,3.nuget打包工具https://npe.codeplex.com/releases/view/620126          ...

  3. Java学习笔记-多线程-创建线程的方式

    创建线程 创建线程的方式: 继承java.lang.Thread 实现java.lang.Runnable接口 所有的线程对象都是Thead及其子类的实例 每个线程完成一定的任务,其实就是一段顺序执行 ...

  4. 一张图看懂git push

    基本用法 上面的四条命令在工作目录.暂存目录(也叫做索引)和仓库之间复制文件. git add files 把当前文件放入暂存区域. git commit 给暂存区域生成快照并提交. git rese ...

  5. iOS --- DIY文件名批量修改

    批量修改文件名: // 1.创建文件管理 NSFileManager *filemanager =[NSFileManager defaultManager]; // 2. 获得所有文件夹路径 NSS ...

  6. android 自定义Style初探---ProgressBar

    系统自带的ProgressBar太丑了,所以我决定自定义一个Style. 原来的Style <?xml version="1.0" encoding="utf-8& ...

  7. python 中文乱码问题2

    1.文件存为utf-8的格式,windows和linux两个环境都可以用 2.中文输出可以采用u方法 比如:print u'成年'

  8. CUDA程序设计(一)

    为什么需要GPU 几年前我启动并主导了一个项目,当时还在谷歌,这个项目叫谷歌大脑.该项目利用谷歌的计算基础设施来构建神经网络. 规模大概比之前的神经网络扩大了一百倍,我们的方法是用约一千台电脑.这确实 ...

  9. python--函数式编程 (高阶函数(map , reduce ,filter,sorted),匿名函数(lambda))

    1.1函数式编程 面向过程编程:我们通过把大段代码拆成函数,通过一层一层的函数,可以把复杂的任务分解成简单的任务,这种一步一步的分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...

  10. [Web开发] 在HTML代码里面如何判断IE版本

    在上一篇blog里面提到IE有不同的显示模式以及如何用Javascript 来动态判定. Web开发者可以根据不同显示模式导入不同的内容.这篇blog 主要讲如何让静态HTML代码根据不同IE版本显示 ...