我的第一篇java笔记
什么是程序
- 程序通常指完成某些事物的一种既定方式和过程。
- 在日常生活中,可以把程序看成一系列动作的执行过程和描述。
Java介绍
- Java是Sun Microystems于1995年推出的高级编程语言。
- Java领域:JavaSE,JavaEE,JavaME //标准版,企业版,微型版:
简而言之,javase是基础,要先学,javaee是企业级,接着学,然后可以转到javaweb方向,javame是做移动应用的。基础必须先学。
开发Java程序:三步走
- 编写源程序 -->MyProject.java
- 编译源程序 -->MyProject.class
- 运行 -->Java运行平台
集成开发环境
- 集成开发环境(IDE)是一类软件,它将程序开发环境和程序调试环境集合在一起,帮助程序员开发软件
- 使用Eclipse开发Java程序步骤:
- 创建一个Java项目 包资源管理器:src目录:存放包和源文件 ;JRE系统库目录:存放程序运行必须的系统库文件
Eclipse导航器:bin目录:存放可执行的字节码文件;src目录:存放Java源文件
- 手动创建Java源程序
- 编译Java源程序
- 运行Java程序
命名规则
标识符是用来标识类名、对象名、变量名、方法名、类型名、数组名、文件名的有效字符序列,也就是他们的名称。
Java规定:标识符由字母、数字、下划线、$组成,并且首字母不能是数字
- 包名:所有字母小写,公司域名反过来写 如:com.biandan
- 类名:所有单词首字母大写 如:StringPrint
- 方法名、变量名:第一个单词首字母小写,其他单词首字母大写(小驼峰法则) 如:stringPrint
- 常量:所有字母大写 如:PI
关键字
对于有特定含义的关键字,在编程时不能用来命名标识符。
数据储存
瞬时状态
- 变量
- 数组
- 集合
持久状态
- 数据库
- 文件
数据类型
- 基本数据类型:四类八种
float a = 2e3f ;
使用final定义字符常量:如final int NUM = 3.14 ;
基本数据类型定义的变量,变量的值全部储存在栈里。
- 引用数据类型
对象(class)
接口(interface)
数组
引用数据类型定义的变量,在栈内存放的是相对应堆的地址。
所有数据类型长度固定,不随硬件、软件系统不同而不同。
数据类型转换
自动类型转换

强制类型转换
大转小时,如:
double a = 10.2;
int b = (int)a / 2;
int c = (int)(a / 2.2);
运算符
- 算术运算符
- 赋值运算符:= += -= *= /= %=
i = i + j ; 等价于 i += j ;推荐使用后者,有更好的性能
- 关系运算符:
- 逻辑运算符 : && 、|| 、 !
&& :当左边的为真时,将不会再计算右边的表达式
- 位运算符 : & 、 | 、^ (按位异或) 、 ~ (按位取反) 、 << (左移位) 、 >> 、 >>> (无符号右移位)
左移位:右边空位补零
右移位: 左边的空位根据原数的符号位补0或1 (负数补1,正数补0),即左边补符号位
无符号右移位:左边空位补零
- 自增自减运算符:++ --
- 三元运算符:?:
a > b ? ++a , ++b
总体而言优先级:算数运算符 > 关系运算符 > 逻辑运算符
注意事项:
- 位运算的结果也是整形数,包括int、long
- 如果操作数是char、byte、short,位运算前其值会自动晋升为int,运算结果为int
Java编码规范
- 类名使用public修饰
- 一行只写一条语句
- { }的使用及位置
- 代码缩进
注释
- 单行注释: //
- 多行注释以“/*”开头,以“*/”结尾
例如:
/**
* HellWorld我的第一个java程序
* @author 张三
* @version 1.0
* @createTime 2016-2-12 15:30
*
*/
常见错误
- public修饰的类的名称必须与Java文件同名!
- main方法作为程序入口,void必不可少!
- Java对大小写敏感
- 每一条Java语句必须以分号结束!
- 注意:不要漏写引号
打印输出
程序示例:
public class Main {
public static void main(String[] args) {
System.out.println("我的第一个Java程序 ");
}
}
基本流程结构
- 顺序结构
- 分支结构:if-else; 多重if; if else if… else; switch(){ case: defult: }
区别:if语句里面为boolean,switch语句里面为整型变量(byte short int char 以及字符串)等值分支使用switch结构
绝大部分情况下switch会快一点,除非是if-else的第一个条件就为true
if语句里面为boolean,
- 循环结构:while , do{}while() ; , for , foreach
跳转语句:break; continue; return;
while判断语句为boolean型
for循环 1.参数初始化 2.条件判断 3.循环体被执行 4.更新循环变量
区别:循环条件不确定时,通常使用while循环
定义数组及其赋值
// 数组赋值的几种方式
// 定义时赋初值
int[] arr = new int[]{1,3,4,5};
int[] arr2 = {1,3,4,6};
// 定义时不赋初值
int[] arr3 = new int[3];
for (int i = 0; i < arr3.length; i++) {
arr3[i] = i;
}
数组三特性:
- 长度固定
- 类型固定
- 空间连续
我的第一篇java笔记的更多相关文章
- 第一篇markdown笔记
博客的样式设置 1 2 3 参考第一篇博客 参考第二篇博客 高效的写博客 博客园虽然支持markdown,但是好多快捷键都不支持,以后可以先在马克飞象上写好markdown笔记,再复制到博客上.
- 学习Java第一篇——Java 安装及环境搭配
内容提要: 1.下载JDK: 2.安装JDK: 3.配置JDK; 第一,下载JDK: 1.登陆网址:www.oracle.com 2.点击 Downloads 3.选择 Java SE 4.选择 ...
- 《安卓网络编程》之第一篇 java环境下模拟客户端、服务器端
1.Socket简介 在网络上的两个程序通过一个双向的通信连接实现数据的交换,这个双向链路的一端称为一个Socket.Socket通常用来实现客户方和服务方的连接.Socket是TCP/IP协议的一个 ...
- 2018年第一篇行动笔记:Reading Log
今天读了盖兆泉的文章<美国教师怎么上阅读课>,觉得干货颇多,不仅仅针对儿童英语阅读,而且对生活的方方面面都有助益. 该文章主要内容摘要如下: 学生需要大量时间阅读 这里的阅读时间是特指花在 ...
- 学习KnockOut第一篇之Hello World
学习KnockOut第一篇之Hello World 笔者刚开始学习KnockOut.写的内容就相当于一个学习笔记.且在此处向官网致敬,比较喜欢他们家的Live Example版块,里面有jsFiddl ...
- Scala语言笔记 - 第一篇
目录 Scala语言笔记 - 第一篇 1 基本类型和循环的使用 2 String相关 3 模式匹配相关 4 class相关 5 函数调用相关 Scala语言笔记 - 第一篇 最近研究了下scala ...
- Java反射篇学习笔记
今天重新学习了java中的反射,写一篇学习笔记总结一下.代码基本都是照着两篇博客敲的: 参考一: https://blog.csdn.net/sinat_38259539/article/deta ...
- 《javascript权威指南》读书笔记——第一篇
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...
- 回合对战制游戏第一篇(初识java)
回合对战制游戏第一篇 一,所谓的java. java是一门完全面向对象的编程语言,而之前所接触到的C语言是一门面向有一个过程的语音,对于两个的区别应该有一个清楚的认识. java的第一个内容. 类和对 ...
随机推荐
- Python量化分析,计算KDJ
Python: v3.6 Pandas: v0.23.4 使用以下方法计算与国内财经软件显示一致 low_list = df['最低价'].rolling(9, min_periods=9).min( ...
- vscode之常用快捷键
原文章地址: vscode: Visual Studio Code 常用快捷键 官方快捷键说明:Key Bindings for Visual Studio Code 主命令框 F1 或 Ctrl+S ...
- word 添加文本框
转https://blog.csdn.net/sroco/article/details/17044973 如何在word2013(2007.2010)中添加带滚动条的文本框 2013年11月30日 ...
- ES timeout 的一些笔记
首先解释下Timeout的作用: 比如,一个search,可能要10分钟才能搜完,那么,es就会等10分钟,直到结果出来.然而,在某些场景下,客户是等不了10分钟的.比如,淘宝搜东西的时候,客户宁可等 ...
- 记录2-在mac上安装ubuntu 16.04 LTS
前几天升级了我用了六七年mac硬件,内存由4G变为8G,硬盘也换成1T SSD,索性把一直想装的ubuntu也装了,方便温习下以前的工作环境. 我比较喜欢LTS的版本,所以安装了16.04. 主要步骤 ...
- (转)K-近邻算法(KNN)
K-近邻算法(KNN)概述 KNN是通过测量不同特征值之间的距离进行分类.它的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别 ...
- wx.navigateBack(OBJECT)怎么携带参数呢?
wx.navigateBack(OBJECT) 关闭当前页面,返回上一页面或多级页面.可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层. OBJECT 参数说明: 参数 ...
- 基于kettle的简单HTTP接口监控
需求:监控系统中使用的所有http接口,要求简单,易用. 一般的思路也就是发送get/post请求,然后检查接口的响应结果. 如果写代码,要处理http请求,检查http响应,实现发邮件,写d ...
- Ping--域名替换重要角色
Ping-问答解惑 一.ping的概念?目的? 答: (1)ping是:在探测主机与主机之间是否可以通信,建立连接:若是源主机在一定时间内收到应答,则证明主机可达,用户不受影响. (2)ping的最终 ...
- Oracle的rollup、cube、grouping sets函数
转载自:https://blog.csdn.net/huang_xw/article/details/6402396 Oracle的group by除了基本用法以外,还有3种扩展用法,分别是rollu ...
