java基础篇1
JAVA基础篇1
注释
单行注释
//这是一个单行注释,由两个斜杠组成,不能嵌套多行注释
多行注释
/*这是一个
多行注释
,//里面不能嵌套多行注释,
但是可以嵌套单行注释*/
文档注释
/**javadoc:文档注释
*有功能,@
*/
标识符和关键字
关键字:

标识符命名规则:
所有标识符都应该以大小写字母,美元符($),下划线(_)开始;
首字母之后可以是大小写字母,美元符,下划线或数字的任何字符组合;
不能用关键字作为变量名和方法名;
《阿里巴巴Java开发手册》编写程序时可以用来参考格式
数据类型
基本类型:
整数类型:byte(1字节),short(2字节),int(4字节),long(8字节,long类型要在数字后面加一个L)
// 二进制0b,八进制0,十六进制0x
浮点类型:float(4字节,float类型要在数字后面加一个F),double(8字节)
//浮点数有舍入误差,最好完全避免用浮点数进行比较
字符类型:char(2字节)
//Uincode编码,/u0000
//字符串类型:string(string不是关键字,是类)
布尔值:boolean(true,false)
引用类型(除了基本类型之外的基本都是引用类型):
类
接口
数组
类型转换
自动转换:
低容量\(\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;
注意:
- 不能对布尔值进行转换;
- 不能把对象类型转换为不相干的类型;
- 把高容量转换为低容量的时候用强制转换;
- 转换的时候可能会出现内存溢出或者精度问题
变量
每个变量都有类型;
变量名必须是合法的标识符;
每个变量声明必须以分号结束
变量作用域:
- 类变量:static
- 实例变量:从属于对像,如果不自行初始化,会变成默认值
- 局部变量:必须声明和初始化值
常量:
//final 常量名 = 值;
//一般常量名由大写字母表示
final int A =3;
变量命名规范:
- 见名知意;
- 变量:第一个单词小写,后面的单词首字母大写;
- 类名:所有单词首字母大写;
- 方法名:第一个单词小写,后面的单词首字母大写;
运算符
算术运算符:+,-,*,/,%,++,--
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=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的更多相关文章
- java基础篇---I/O技术
java基础篇---I/O技术 对于任何程序设计语言而言,输入输出(I/O)系统都是比较复杂的而且还是比较核心的.在java.io.包中提供了相关的API. java中流的概念划分 流的方向: 输 ...
- 金三银四跳槽季,BAT美团滴滴java面试大纲(带答案版)之一:Java基础篇
Java基础篇: 题记:本系列文章,会尽量模拟面试现场对话情景, 用口语而非书面语 ,采用问答形式来展现.另外每一个问题都附上“延伸”,这部分内容是帮助小伙伴们更深的理解一些底层细节的补充,在面试中可 ...
- java基础篇---HTTP协议
java基础篇---HTTP协议 HTTP协议一直是自己的薄弱点,也没抽太多时间去看这方面的内容,今天兴致来了就在网上搜了下关于http协议,发现有园友写了一篇非常好的博文,博文地址:(http: ...
- java基础篇---I/O技术(三)
接上一篇java基础篇---I/O技术(二) Java对象的序列化和反序列化 什么叫对象的序列化和反序列化 要想完成对象的输入或输出,还必须依靠对象输出流(ObjectOutputStream)和对象 ...
- Java基础篇 - 强引用、弱引用、软引用和虚引用
Java基础篇 - 强引用.弱引用.软引用和虚引用 原创零壹技术栈 最后发布于2018-09-09 08:58:21 阅读数 4936 收藏展开前言Java执行GC判断对象是否存活有两种方式其中一种是 ...
- java基础篇 之 构造器内部的多态行为
java基础篇 之 构造器内部的多态行为 我们来看下下面这段代码: public class Main { public static void main(String[] args) { new ...
- 小白—职场之Java基础篇
java基础篇 java基础 目录 1.java是一种什么语言,jdk,jre,jvm三者的区别 2.java 1.5之后的三大版本 3.java跨平台及其原理 4.java 语言的特点 5.什么是字 ...
- Java基础篇(JVM)——类加载机制
这是Java基础篇(JVM)的第二篇文章,紧接着上一篇字节码详解,这篇我们来详解Java的类加载机制,也就是如何把字节码代表的类信息加载进入内存中. 我们知道,不管是根据类新建对象,还是直接使用类变量 ...
- Java基础篇(JVM)——字节码详解
这是Java基础篇(JVM)的第一篇文章,本来想先说说Java类加载机制的,后来想想,JVM的作用是加载编译器编译好的字节码,并解释成机器码,那么首先应该了解字节码,然后再谈加载字节码的类加载机制似乎 ...
随机推荐
- 使用dd命令快速生成大文件或者小文件
使用dd命令快速生成大文件或者小文件 需求场景: 在程序的测试中有些场景需要大量的小文件或者几个比较大的文件,而在我们的文件系统里一时无法找到那么多或者那么大的文件,此时linux的dd命令就能快速的 ...
- Salesforce LWC学习(二十一) Error浅谈
本篇参考:https://developer.salesforce.com/docs/component-library/documentation/en/lwc/data_error https:/ ...
- .NetCore使用Redis,StackExchange.Redis队列,发布与订阅,分布式锁的简单使用
环境:之前一直是使用serverStack.Redis的客服端,今天来使用一下StackExchange.Redis(个人感觉更加的人性化一些,也是免费的,性能也不会差太多),版本为StackExch ...
- LG P6788 「EZEC-3」四月樱花
Description 在樱花盛开的四月,Muxii 望着满天飘落的樱花,向身旁的 ZZH 问道: “究竟有多少朵樱花在这个四月飘落?” ZZH 答道:“樱花飘落的朵数 $s$与时间 $t$ 有如下 ...
- IDEA下Maven项目搭建踩坑记----2.项目编译之后 在service层运行时找不到 com.dao.CarDao
项目写的差不多 想运行一下,然后发现运行到Service层的时候报错说找不到Dao层文件 ,纠结半天之后看了下编译好的项目文件,发现mapper文件下边是空的, 于是就百度找一下原因,结果说是IDEA ...
- 不要再问我 in,exists 走不走索引了
微信搜『烟雨星空』,获取最新好文. 前言 最近,有一个业务需求,给我一份数据 A ,把它在数据库 B 中存在,而又比 A 多出的部分算出来.由于数据比较杂乱,我这里简化模型. 然后就会发现,我去,这不 ...
- 记录学习docker命令的随笔
docker安装与启动 安装docker yum包更新到最新 sudo yum update 安装需要的软件包 sudo yum install -y yum-utils device-mappe ...
- 【经验分享】用adb揪出安卓APP弹窗广告的原形
背景 相信不少安卓用户中过影子弹窗广告的困扰,这种推广APP本体在后台运行,而且可以在其他APP上弹出覆盖广告,一不小心就会误操作,点击广告或者下载APP,着实令人恶心. 以前的广告软件只在通知栏会推 ...
- 基于canal的client-adapter数据同步必读指南
本文将介绍canal项目中client-adapter的使用,以及落地生产中需要考虑的可靠性.高可用与监控报警.(基于canal 1.1.4版本) canal作为mysql的实时数据订阅组件,实现了对 ...
- A+B in Hogwarts (20)(模拟)
时间限制 1000 ms 内存限制 65536 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小) 题目描述 If you are a fan of Harry Potter ...