JAVA基础篇1

注释

单行注释

//这是一个单行注释,由两个斜杠组成,不能嵌套多行注释

多行注释

/*这是一个
多行注释
,//里面不能嵌套多行注释,
但是可以嵌套单行注释*/

文档注释

/**javadoc:文档注释
*有功能,@
*/

标识符和关键字

关键字:

标识符命名规则:

  1. 所有标识符都应该以大小写字母,美元符($),下划线(_)开始;

  2. 首字母之后可以是大小写字母,美元符,下划线或数字的任何字符组合;

  3. 不能用关键字作为变量名和方法名;

《阿里巴巴Java开发手册》编写程序时可以用来参考格式

数据类型

基本类型:

  1. 整数类型:byte(1字节),short(2字节),int(4字节),long(8字节,long类型要在数字后面加一个L)

    // 二进制0b,八进制0,十六进制0x

  2. 浮点类型:float(4字节,float类型要在数字后面加一个F),double(8字节)

    //浮点数有舍入误差,最好完全避免用浮点数进行比较

  3. 字符类型:char(2字节)

    //Uincode编码,/u0000

    //字符串类型:string(string不是关键字,是类)

  4. 布尔值:boolean(true,false)

引用类型(除了基本类型之外的基本都是引用类型):

  1. 接口

  2. 数组

类型转换

自动转换:

低容量\(\rightarrow\) 高容量

byte,short,char\(\rightarrow\) int\(\rightarrow\) long\(\rightarrow\) float\(\rightarrow\) double

int i=1000000000//十亿
int j=20;
long total=i*j;//注意这里还是会发生溢出,因为是先计算i*j再转换为long类型
long total2=(long)i*j;//不会溢出

强制类型转换:

//(类型)变量名     从高到低
float=2.3;
int i=(float)m;

注意:

  1. 不能对布尔值进行转换;
  2. 不能把对象类型转换为不相干的类型;
  3. 把高容量转换为低容量的时候用强制转换;
  4. 转换的时候可能会出现内存溢出或者精度问题

变量

  1. 每个变量都有类型;

  2. 变量名必须是合法的标识符;

  3. 每个变量声明必须以分号结束

变量作用域:

  1. 类变量:static
  2. 实例变量:从属于对像,如果不自行初始化,会变成默认值
  3. 局部变量:必须声明和初始化值

常量:

//final 常量名 = 值;
//一般常量名由大写字母表示
final int A =3;

变量命名规范:

  1. 见名知意;
  2. 变量:第一个单词小写,后面的单词首字母大写;
  3. 类名:所有单词首字母大写;
  4. 方法名:第一个单词小写,后面的单词首字母大写;

运算符

  • 算术运算符:+,-,*,/,%,++,--

  • 赋值运算符:=

  • 关系运算符:>,<,>=,<=,==,!=instanceof

  • 逻辑运算符:&&,||,!

  • 位运算符:&,|,^,~,>>,<<,>>>

    //&两个对应位都是1才为1;|有一个对应位为1就为1;^两个对应位相同为0,不同为1;~按位取反;<<乘2;>>除以2;

  • 条件运算符:? :

  • 扩展运算符:+=,-=,*=,/=

  • 字符串连接符:+ //前面如果有string类型的会进行拼接,在后面则前面的会进行运算

优先级:多用()

包机制

java提供包机制,用于区别类名的命名空间

定义包:

package packagename;//packagename为这个文件所属于的包的包名;放在整个.java文件开头

一般利用域名倒置作为包名

导入包:

import packagename;//packagename为想要调用的包的包名或者下属的类名;放在package语句的后面,class的前面
import base.*//*为通配符,将下属所有的类导入

JavaDoc

javadoc命令是用来生成自己的API文档的:

cmd命令行

/**
*
* @author
* @version
* ...
*/

java基础篇1的更多相关文章

  1. java基础篇---I/O技术

    java基础篇---I/O技术   对于任何程序设计语言而言,输入输出(I/O)系统都是比较复杂的而且还是比较核心的.在java.io.包中提供了相关的API. java中流的概念划分 流的方向: 输 ...

  2. 金三银四跳槽季,BAT美团滴滴java面试大纲(带答案版)之一:Java基础篇

    Java基础篇: 题记:本系列文章,会尽量模拟面试现场对话情景, 用口语而非书面语 ,采用问答形式来展现.另外每一个问题都附上“延伸”,这部分内容是帮助小伙伴们更深的理解一些底层细节的补充,在面试中可 ...

  3. java基础篇---HTTP协议

    java基础篇---HTTP协议   HTTP协议一直是自己的薄弱点,也没抽太多时间去看这方面的内容,今天兴致来了就在网上搜了下关于http协议,发现有园友写了一篇非常好的博文,博文地址:(http: ...

  4. java基础篇---I/O技术(三)

    接上一篇java基础篇---I/O技术(二) Java对象的序列化和反序列化 什么叫对象的序列化和反序列化 要想完成对象的输入或输出,还必须依靠对象输出流(ObjectOutputStream)和对象 ...

  5. Java基础篇 - 强引用、弱引用、软引用和虚引用

    Java基础篇 - 强引用.弱引用.软引用和虚引用 原创零壹技术栈 最后发布于2018-09-09 08:58:21 阅读数 4936 收藏展开前言Java执行GC判断对象是否存活有两种方式其中一种是 ...

  6. java基础篇 之 构造器内部的多态行为

    java基础篇 之 构造器内部的多态行为 ​ 我们来看下下面这段代码: public class Main { public static void main(String[] args) { new ...

  7. 小白—职场之Java基础篇

    java基础篇 java基础 目录 1.java是一种什么语言,jdk,jre,jvm三者的区别 2.java 1.5之后的三大版本 3.java跨平台及其原理 4.java 语言的特点 5.什么是字 ...

  8. Java基础篇(JVM)——类加载机制

    这是Java基础篇(JVM)的第二篇文章,紧接着上一篇字节码详解,这篇我们来详解Java的类加载机制,也就是如何把字节码代表的类信息加载进入内存中. 我们知道,不管是根据类新建对象,还是直接使用类变量 ...

  9. Java基础篇(JVM)——字节码详解

    这是Java基础篇(JVM)的第一篇文章,本来想先说说Java类加载机制的,后来想想,JVM的作用是加载编译器编译好的字节码,并解释成机器码,那么首先应该了解字节码,然后再谈加载字节码的类加载机制似乎 ...

随机推荐

  1. 玩转Spring——Spring AOP

    什么是AOP?AOP(Aspect Oriented Programming )被称为面向切面编程AOP利用一种称为"横切"的技术,剖解开封装的对象内部,并将那些影响了多个类的公共 ...

  2. VMDNAMD命令规则(转载)

    输出体系的整个带电量:measure sumweights $all weight charge 给PDB文件设置周期边界条件:pbc set {54 54 24 } -all 将此晶胞内原子脱除周期 ...

  3. 从零搭建Spring Boot脚手架(7):整合OSS作为文件服务器

    1. 前言 文件服务器是一个应用必要的组件之一.最早我搞过FTP,然后又用过FastDFS,接私活的时候我用MongoDB也凑合凑合.现如今时代不同了,开始流行起了OSS. Gitee: https: ...

  4. Linux bpytop工具介绍

    一.工具简介: Easy to use, with a game inspired menu system. Full mouse support, all buttons with a highli ...

  5. 初识ABP vNext(7):vue身份认证管理&租户管理

    Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 目录 前言 开始 按钮级权限 身份认证管理 R/U权限 权限刷新 租户管理 租户切换 效果 最后 前言 上一篇介绍了vue+ABP国际化 ...

  6. 数据处理 | pandas入门专题——离散化与one-hot

    今天是pandas数据处理专题第7篇文章,可以点击上方专辑查看往期文章. 在上一篇文章当中我们介绍了对dataframe进行排序以及计算排名的一些方法,在今天的文章当中我们来了解一下dataframe ...

  7. 03 . Go开发一个日志平台之Elasticsearch使用及kafka消费消息发送到Elasticsearch

    Elasticsearch使用 详细使用请看我写的Go操作Elasticsearch专篇 https://www.cnblogs.com/you-men/p/13391265.html example ...

  8. 开源流数据公司 StreamNative 推出 Pulsar 云服务,推进企业“流优先”进程

    Apache 顶级项目 Pulsar 背后的开源流数据公司 StreamNative 宣布,推出基于 Apache Pulsar 的云端服务产品--StreamNative Cloud.该产品的发布, ...

  9. python笔记-正则表达式

    什么是正则表达式: 正则表达式是一个特殊的字符序列,能帮助我们方便的检查一个字符串是否与某种模式匹配(定义往往都很枯燥) 也称之为”模式“,即可用于检查一个给定的字符串是否符合某种模式 举例: 我们定 ...

  10. qdu-凑数题(01背包)

    Description 小Q手里有n(n<=1000) 个硬币,每枚硬币有一定的金额(200=>x>=1)他想知道,用这些硬币(每枚硬币只能用一次,但可能会有等面值的用两次) 能组成 ...