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. 分享 Ionic 开发 Hybrid App 中遇到的问题以及后期发布 iOS/Android 的方方面面

    此篇文章主要整理了最近在使用 Ionic 开发 Hybrid App 过程中遇到的一些疑难点以及后期发布生成 iOS 和 Android 版本过程中的种种问题. 文章目录 Ionic 简介和项目需求介 ...

  2. 正则获取HTML代码中img的src地址

    /// <summary> /// 获得HTML中所有图片的src地址 /// </summary> /// <param name="sHtmlText&qu ...

  3. java IO流复制图片

    一.使用字节流复制图片 //字节流方法 public static void copyFile()throws IOException { //1.获取目标路径 //(1)可以通过字符串 // Str ...

  4. jeecg单步调试

    自己没本事写开发平台,用别人的又各种担心,想学着别人弄个单步调试,老是出现这个"source not found"-- 百度各种方法都搞不定,担心是自己安装错了?这个jeecg本身 ...

  5. CentOS6.5_64位系统下安装配置postfix邮件系统 启用并配置SMTP在第三方上边使用发送邮件

    一前言 本来使用qq邮箱发送邮件,然后借助sendEmail来发送邮件告警,但是有每天的200封限制,很是不爽,于是想到来自己搭建邮件服务器来解决这个问题,关于使用sendEmail来借助qq邮箱来发 ...

  6. 微信签名算法的服务端实现(.net版本)

    一.概要 微信此次开放JS接口,开放了一大批api权限,即使在未认证的订阅号也可以使用图像接口,音频接口,智能接口,地理位置,界面操作,微信扫一扫等功能.要知道:以前订阅号只能接受和被动回复用户消息而 ...

  7. Python 安装easy_install详解

    easy_install 真的特别方便.我之前安装pip.wheel.bs4.requests等都是用python setup.py install 安装,操作步骤还不算很烦(但是对比easy_ins ...

  8. GitHub 上 57 款最流行的开源深度学习项目

    转载:https://www.oschina.net/news/79500/57-most-popular-deep-learning-project-at-github GitHub 上 57 款最 ...

  9. linux下apache各种跳转(包括伪静态)的配置

      1.404跳转: vi /etc/httpd/conf/httpd.conf 在虚拟主机配置里添加一行:ErrorDocument 404 /404.html 2.301跳转: 1)将不带www的 ...

  10. linux shell脚本查找重复行/查找非重复行/去除重复行/重复行统计

    转自:http://blog.sina.com.cn/s/blog_6797a6700101pdm7.html 去除重复行 sort file |uniq 查找非重复行 sort file |uniq ...