java 基础 (1)

1.在Windows 的 cmd 下 操作命令行

切换盘: 盘号加冒号 , d: , e: ,
md : 创建一个新的目录
dir:查看目录下的内容
cd : 切换目录
rd:删除目录,需要是空目录
del : 删除文件, 当跟目录时,提示是否删除这个目录下的所有文件。
exit : 退出 dos 窗口
echo: 写内容到文件。

2. java 的语言特点

在 JVM 上运行,可以跨平台运行。不同操作系统有不同的JVM来对应。

java虚拟机
内存垃圾自动回收,一定程度上,还会内存泄漏和溢出。

JDK:包含JRE和java开发工具
JRE:java运行环境,包含java虚拟机和java的核心类库

3.基本执行过程

1.编写 java源文件,以 .java 为文件后缀名
2. 用 javac.exe 来把java源文件 编译成 .class 文件 (字节码文件) , javac XXX.java
3. 用 java.exe 来运行 .class文件 , java 类名 例如: java XXX

4.基本编写

1.文档注释
单行注释: //
多行注释: /* */ ,不能嵌套使用。
文档注释: 会被 javadoc 解析,生成一套 可以网页显示的程序代码介绍,如下。。。
用法: javadoc -d 存放目录名 -author -version XXX.java
前面的 -author 等 根据在 代码前面标注的来确定。。。

/**
	@author XXX
	@version XXX
	等。。。
*/

2.API文档
各种类库的说明。。。,可以由 文档注释生成。

3.一个文件中 只能有一个 public 的类,并且文件名要与这个 public 类相同;在这个文件中可以有其他的非public 类

public static void main(String[ ] args) 是程序的入口,一般是固定格式。
参数可以有些许改变, 两个地方可以改变 (String a[ ])

System.out.println() 输出内容,然后换行
System.out.print() 输出内容,光标还在这行

5.基础知识

关键字;
保留字:
标识符: 自己可以起名字的
标识符命名规范:
包名: 都小写
类名:每个单词首字母都大写,大驼峰命名法
变量名和方法名:第一个单词首字母小写,后面的单词首字母大写,小驼峰命名法
常量名:所有字母都大写,多个单词时,用 _ 连接。

变量:内存中的一个存储空间,是程序的基本存储单元。 可以更改为同类型的其他值。
变量类型,变量名,存储的值
变量被定义在作用域中,只在所定义的作用域内起作用。全局的,局部的。
同一作用域内 不能有同名的变量名。

需要先声明并被赋值 后 才可以使用:
声明定义: 变量类型 变量名 = 要存储的值

变量的类型:
byte是计算机中的基本存储单元,bit是计算机中的

基本数据类型:8种
		数值型 : 				
				整型:byte , short , int , long   分别占1,2,4,8字节(8bit)long类型使用时,赋给它的值以 l或L结尾(拿8个字节来存2);整型常量默认为int型  12 
				浮点型: float , double   占(4,8)字节,12.3 默认为double 类型, 12.3f  才为float类型。
		字符型: char  占2字节,用 ' ' 来包含一个字符, 'a',  '1'   ,转义字符:  '\n'  , '\t'   ,Unicode值来表示: '\u0043' , 'u0013';  里面必须放一个
		布尔型: boolean  :  两个值, true,false
引用数据类型:    String是属于类的 字符串类,声明时用 " " ;可以与8种基本类型进行连接运算 用 + 号来进行。
										+ 号是  连接还是 加法运算,要看 + 左右两边的 值的类型。只有有string是连接,没有String是加法。
	类:class
	接口:interface
	数组:array

自动类型转换:(byte char short )int long float double 表示范围由小到大,当小与大一起运算时 结果会自动类型转换为大的类型。
当 byte , short , char 这三种类型的值 做运算时(不管时自我运算还是两两运算) ,结果 需要 用 int 型来 接收。
强制类型转换:把容量大的类型的值,赋给容量小的类型的变量。可能导致精度损失,把字节码的后部进行匹配复制。
语法: 类型 变量名 =(类型)值

字符集: 01010101 的形式 存在硬件上, 不同的组合对应于 不同的字符。
ASCII码 : 一个字节的大小 可以表示 256个表示的字符
Unicode:
utf-8: 可以有 1 ~ 6 个字节组成,
对于单字节编码:第一位 为 0 ,其余7位用于编码,类似 ASCII码
对于多字节编码:第一个字节的前n位为1,表示有n个字节用于这个编码,后8-n为用于棉麻
后面的n-1 个 字节,前两个位为 10 ,后6位 用于编码

进制之间的转换:二进制的形式存放在硬盘中。

二进制:以 0b 或 0B 开头
八进制:0开头
十进制:非0开头
十六进制:0x或0X 开头; 0~9和 A-F (不区分大小写)

符号位: 0 正数,1 负数

二进制转十进制:
对应正数 每个位上的 值(0或1) 乘以 2^n (n 表示位的位号) 然后相加起来。
对于负数:原码,反码,补码
计算机底层以补码的形式存放数值。
正数的上面三个码相同
负数, 对于正数的符号位变为1,是负数的原码。
把除符号位的数值 进行 取反 得到 反码
再把反码进行加1 得到补码
十进制转二进制: 除2 把每次的余数 联合起来,,,取逆序。
二进制转十六进制: 每四位 转为 一位。
二进制转八进制:每三位 转为 一位 。

6.运算符和流程控制

1.运算符
算术运算符:+ - * / % ++ –
自增自减少 运算符不会改变 值的类型, 对应超过表示范围的 直接截断,只取固定的位数。

赋值运算符: = += -= *= /= 不会改变值的类型,对应超过的会进行截断: 例如:short a=0 ; a += 1;
= 支持 连续赋值, 当 两侧 类型不同时 ,会进行自动类型转换,或代码写强制类型转换。

比较运算符: 结果为 boolean 类型
== != < > <= >=

逻辑运算符: 操作布尔类型的变量。
| & : 逻辑 ,& 前后的都会进行运算,再进行与操作。| 前后的都运算。
|| && : 短路 ,&& 前面的为false时,后面的不再运算了。 || 当前面时true时,后面的不再运算。
^ :逻辑异或 : 当左右两边不同时 为 true ,当左右两边相同时 为 false。
! : 非运算

位运算符: 操作 整数型的 数值类型。
<< : 往左移 , 用 0 在后面补充。 在一定范围内, 移n位相当于 * 2^n
>> : 往右移,在一定范围内,每移 一位相当于除以2;;最高位为0的用0补,最高位为1的用1补。
>>>: 无符号右移 , 不管第一位是 0还是1 ,都 用 0 来补。
& : 只有都是 1 的,结果为1 ,其余的为0
| : 只有有一个 1 ,结果就位1
^: 只有不一样 ,为1 ,一样的为0
~: : 按位取反,包括符号位在内,

   交换两个数值类型的变量:   除了定义 临时变量外的方法:
   			m = 10
   			n = 7
   			m = m ^ n
   			n = m ^ n
   			m = m ^ n

三元运算符: 可以嵌套使用 , 三元运算符的地方,可以改写为 if-else 形式。
(条件表达式) ? 表达式1:表达式2

运算符的优先级:
() ;
++ – ~ ! ;
/ % ;
+ - ;
<< >> >>> ;
< > <= >= ;
== !=
&
^
|
&&
||
?:
= *= /= += -= <<= >>= >>>=

2.流程控制

从键盘获取输入:
		Scanner scan = new Scanner(System.in)
		int x = scan.nextInt()
		可以读取多种类型的数据。。。

顺序结构:

分支结构:

	if-else:    
	 if ( )  {           }
	 else if( )         {         }
	 else( )  {   }

	switch-case :     匹配到一个后,执行时会把后面的都执行,直到遇到break关键字或到末尾结束
			这个里的表达式  只能是  byte	short	char  int   枚举类型   String类型
			switch ( 表达式){
				case  常量1: 执行的语句;
				case  常量2: 执行的语句;
				case 常量3: 执行的语句; break;
				default: 执行的语句;
			}
			

循环结构:

	for:
		
	while:

	do-while:
	

break,continue 关键字  :		  在这个作用域内它俩的后面 ,不能再跟代码了。是执行不到的代码
				break :  结束 当前 循环
				continue:  结束  当次  循环
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值