Java·1 首个Java代码

12 篇文章 0 订阅
4 篇文章 0 订阅

Java·1 首个Java代码

注:代码及文档皆 首发与于 GitHubGitee

1.HelloWord

代码编写
class FirstJava {
	public static void main(String[] args) {
		System.out.println("HelloWord");
	}
}
编译执行
javac -编译工具
	javac 源文件名.java
		编译后生成 FirstJava.class 文件
		.class 字节码文件,二进制文件,需要借助JVM执行解释给CPU
		
java -执行工具
	java 类名
		终端:输出

2.代码规范

代码注释
1.  //单行注释
2.  /*多行注释*/
3.  /**文档注释*/ 
	-->生成外部文档:
	javadoc -d . HelloWorld.java
AJCG规范
阿里巴巴Java开发规范
1.  标识符:
	开发中标识符就是名字
	类名、方法名、变量名
	
2.	规范--部分
a.	字符范围:英文字母(A~Z a~z)数字() 唯一可以使用的标点符号_
b.	标识符要求必须英文字幕开头
c.	标识符严格区分大小写
d.	标识符没有严格的长度限制,但是会根据实际需求来限制标识符的长度
e.	标识符需要做到见名知意,动宾结构!!!
	规范格式
        studentAge	见名知意
        getStudentAge	动宾结构
	不允许:混拼 简评 拼音
f. 	推荐使用驼峰命名法和下划线命名法
	小驼峰:适用于 变量名、方法名
		首字母小写,只有每个单词首字母大写
	大驼峰:适用于 类名、接口名
		每个单词首字母大写
	下划线命名法:
		所有字母都是大写的情况下,为了区分单词之间的间隔
		JAVA_HOME DEFAULT_CAPACIYT
g.	已经被Java使用的关键字和保留字不得用于自定义标识符

3.变量基本概念

变量

变量组成:数据类型+变量名+值

定义流程:

//声明:
//	数据类型 变量名;
	int money; //开辟整数变量空间

//赋值
	//变量名 = 值;
	money = 100;//将指数值赋给变量

数据类型:
	基本数据类型--八大基本数据类型
		整数 *int为整数默认类型,若需为long类型赋值,须在值后加L ...
		小数/浮点数--科学计算法表示 *double为浮点数默认类型,若需为float类型赋值,须在值后加F
		布尔
		字符	
	引用数据类型
		字符串
		数组
		对象

注意:Java是强类型语言,变量类型必须与数据类型保持一致

整型占用内存空间大小取值范围
byte1字节-27~27-1; -128~127
short2字节-215~215-1
int4字节-231~231-1
long8字节-263~263-1
浮点型占用内存空间大小取值范围
float4字节10^308
double810^+308
布尔类型占用内存空间大小取值范围
boolean ture/false1字节ture/false
字符型占用内存空间大小取值范围
char2字节Unicode字符集(万国码)
定义变量的第一行代码
代码实录
class VariableTest {
	public static void main(String[] args) {
		/* 整形变量 */
		byte bytNumber = 10;
		short shortNumber = 20;
		int intNumber = 30;
		long longNumber = 40L;
		
		/* 整型变量展示 */
		System.out.println(bytNumber);
		System.out.println(shortNumber);
		System.out.println(intNumber);
		System.out.println(longNumber);
		
		/* 浮点数变量 */
		float floatNumber = 3.14F;
		double doubeleNumber = 0.618;
		
		/* 浮点数变量展示 */
		System.out.println(floatNumber);
		System.out.println(doubeleNumber);
		
		/* 
		字符型变量
		字符常量:
			单引号包含的单个元素 'a'
		*/
		char ch1 = 'A';
		char ch2 = '中';
		
		/* 字符型变量展示 */
		System.out.println(ch1);
		System.out.println(ch2);
		
		/* 布尔变量 */
		boolean ret1 = true;
		boolean ret2 = false;
		
		/* 布尔变量展示 */
		System.out.println(ret1);
		System.out.println(ret2);
		
		// int num;
		// System.out.println(num);
		
		// num = 10;
		
		
	}
}
问题总结
  1. 数据类型不兼容问题

    VariableTest.java:16: 错误: 不兼容的类型: 从double转换到float可能会有损失
                    float floatNumber = 3.14;
                                        ^
    1 个错误
    
    计算机为了保证数据的精度,同时为了数据后期的延展性,会默认使用double类型。若需为float类型赋值,须在值后加F
    	修改:
    		float floatNumber = 3.14F;
    
    类似的--此处属于优化/规划
    	long类型变量赋值操作要求:在常量后加L。
    	修改:
    		long longNumber = 40L;
    		
    ** L,F,...要求用大写--用于区分 eg:l & 1;
    
  2. Java中变量未赋值不能使用

    VariableTest.java:44: 错误: 可能尚未初始化变量num
                    System.out.println(num);
                                       ^
    1 个错误
    
    Java中规定变量未赋值情况,不能参与除赋值外的其他任何操作。避免了C中没有必要的野值问题
    
    
  3. Java未定义不能使用

    VariableTest.java:46: 错误: 找不到符号
                    num = 10;
                    ^
      符号:   变量 num
      位置: 类 VariableTest
    1 个错误
    
字符
  1. 字符实录

    class Demo {
    	public static void main(String[] args) {
    		char ch = '\'';
    		
    		System.out.println(ch);
    		
    		System.out.println("测试\n测试");
    		System.out.println("测试\t测试");
    		System.out.println("测试\\测试");
    		System.out.println("测试\\\\测试");
    		
    	}
    }
    
  2. 字符常量基本概念

    英文单引号包含的单个元素
    
  3. 转义字符

    \ -->转义字符标记
    	将有特定含义字符转换为无意义字符
    	或者把无意义字符转换为有含义字符
    	
    常用:
    	\'
    	\"
    	\n 换行,回车
    	\t tab键,制表符
    转义字符有且只能处理一个字符
    	\\ 表示一个反斜杠
    	\\\\ 表示两个反斜杠
    	
    
  4. 字符常量的使用

    有且只允许使用字符本身!!! eg:'A'
    
    a. 英语字符中大写靠前,小写靠后
    b. 大写和小写字符之间有其他字符(参ASCII)
     
    优势:
    	1. 阅读性好
    	2. 保证数据类型一致化
    	3. 减少没有必要的歧义
    
字符串【初次相识】
  1. 字符串数据类型

    字符和字符串的区别 --单 多 eg:羊肉和羊肉串
    
    字符串特定标记
    	"" 英文双引号包含的所有内容都是字符串本身
    String字符串数据类型	
    
类型转换
  1. 自动类型转换

    目标类型大于源类型
    
  2. 强制类型转换 代码

    // 正确代码:
    class Demo {
    	public static void main(String[] args) {
    		double num1 = 3.5;
    		
    		// 这里存在数据精度丢失,且不可逆
    		int num2 = (int) num1;
    		
    		System.out.println(num1);
    		System.out.println(num2);
    		
    		double num3 = (double) num2;
    		System.out.println(num3);
    		
    	}
    }
    
    //输出:3.5; 3; 3.0
    
  3. 强制类型转换

    目标类型小于源类型 --精度缺失
    eg:
    	double类型保存到int类型,这里
    	
    普通转换 报错-->
    Demo.java:5: 错误: 不兼容的类型: 从double转换到int可能会有损失
                    int num2 = num1;
                               ^
    1 个错误
    
    【个人建议】
    	对于基本数据类型的强制转换,不建议使用,会导致数据精度的丢失,也可能导致其他问题。
    	eg:上述函数num1 = 3.9999999999999时;num2会输出为 4
    	
    【用处】
    	强制类型转化在面向对象开发中,可以用来操作对象间的关系。
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fStardust

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值