Java基础

Java基础部分笔记

注释、标识符、关键字

注释

Java中有三种注释:

  • 单行注释:“// + 内容”,可以注释一行文字
  • 多行注释:“/* + 内容 + */”,可以注释多行文字
  • 文档注释:“/** + 内容 + */”,注释多行文字的同时加一些标记

示例:

// 单行注释

/*
多行注释
多行注释
多行注释
 */

/**
 * 文档注释
 * @Description 表示描述
 * @Auther 表示作者
 */

标识符

标识符的使用

标识符: Java 所有的组成部分都需要名字。类名变量名以及方法名都被称为标识符。

标识符注意点

  • 所有的标识符都应该以字母(A-Z或者a-z)美元符($)、或者**下划线(_)**开始
  • 首字符之后可以是字母(A-z或者a-z)美元符($)、下划线(_)数字的任何字符组合
  • 不能使用关键字作为变量名或方法名。
  • 标识符是大小写敏感
  • 合法标识符举例:age、$salary、_value、_1_value
  • 非法标识符举例:123abc、-salary、#abc
public static void main(String[] args){
	String 王者荣耀 = "最强王者";
	System.out.println(王者荣耀);
	}
  • 可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low
关键字

在这里插入图片描述

数据类型

强类型语言和弱类型语言

  • 强类型语言
    要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
  • 弱类型语言

Java的数据类型分为两大类

  • 基本类型(primitive type)
  • 引用类型(reference type)

在这里插入图片描述
示例:

public class Demo02{
	public static void main(String[]args){
		//八大基本数据类型
		//整数
		int numl=10;//最常用
		byte num2=20;
		short num3=30;
		long num4=30L;//Long类型要在数字后而加L
		//小数:浮点数
		float num5=50.1F;//fLoat类型要在数字后面加个F 
		double num6=3.141592653589793238462643;
		//字符
		char name='国';
		//字符串,string不是关键字,类
		//String namea="秦疆";
		//布尔值:是非
		boolean flag=true;
		//boolean flag=false;
}

类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。
低------------------------------------->高
byte,short,char->int->long->float->double
  • 运算中,不同类型的数据先转化为同一类型,然后进行运算。
  • 强制类型转换
    由高到低进行转换,格式: (类型)变量名
  • 自动类型转换
    由低到高进行转换

注意点:

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

补充知识

// 精度问题
System. out. println((int)23.7);//23
System. out. println((int)-45.89f);//-45
//char和int之间的转换
char c='a';
int d=c+1; 
System.out.println(d);//98 
System.out.println((char)d);//b
public class Demoe6{
	public static void main(string[]args){
	//操作比较大的数的时候,注意溢出问题
	//JDK7新特性,数字之间可以用下划线分割
	int money=10_0000_0000;
	System.out.println(money);//1000000000
	}
public class Demoe6{
	public static void main(String[]args){
	//操作比较大的数的时候,注意溢出问题
	int money=10_0000_0000;
	int years=20;
	int total=money*years;//-147483648e,计算的时候溢出了
	long total2=money*years;///-147483648e,默认是int,转换之前已经存在问题了?
	long tota13=money*((long)years); //先把一个数转换为long
	System.out.println(total3);//解决
}

变量

  • 变量是什么:就是可以变化的量!
  • Java是一种强类型语言,每个变量都必须声明其类型。
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varName[=value][{,varName[=value]}];
//数据类型变量名=值;可以使用逗号隔开来声明多个同类型变量。

注意事项:

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
  • 变量名必须是合法的标识符。
  • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

变量作用域

  • 类变量
  • 实例变量
  • 局部变量

示例:

public class Variable{
	static int allClicks=0;//类变量
	String str="hello world";//实例变量
	public void method(){
		int i=0;//局部变鸯
	}
}

解释:

public class Demoe8{
	//类变量 static 从属于类
	static double salary=2500;
	
	//属性:变量
	//实例变量:从属于对象;如果不自行初始化,这个类型的默认值 0 0.0
	//布尔值:默认是false
	//除了基本类型,其余的默认值都是nulL;

	String name;
	int age;
	
	//main方法
	public static void main(String[]args){
		//局部变量;必须声明和初始化值
		int i=10;
		System.out.println(i);//10
		//变量类型,变量名字=new Demoe8();
		Demo8 demoe8=new Demoe8();
		System.out.println(demo8.age);//0
		System.out.print1n(demo8.name);//null
		
		//类变量 static
		System.out.println(salary);//2500
	}
	
	//其他方法
	public void add(){
	
	}
}

常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
  • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名=值;
final double PI=3.14
  • 常量名一般使用大写字符。

示例

public class Demoe9{
	//修饰符,不存在先后顺序
	static final double PI=3.14;
	
	public static void main(String[] args){
		System.out.println(PI);
	}
}

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

运算符

Java 语言支持如下运算符:

  • 算术运算符:+,-,*,/,%,++,-
  • 赋值运算符=
  • 关系运算符:>,<,>=,<=,==,!=instanceof
  • 逻辑运算符:&&,||,!
  • 位运算符:&,|,^,~,>>,<<,>>>(了解!!!)
  • 条件运算符?:
  • 扩展赋值运算符:+=,-=,*=,/=

算数运算符

运算中不同类型的自动转换:

  • 运算中有一个数是long,结果都是long;
  • 运算中没有long时,有一个数是double,结果都是double;
  • 其他结果全为int;

示例

package operator;;

public class Demoe2{
	public static void main(String[] args){
		long a=123123123123123L; 
		int b=123; 
		short c=10; 
		byte=8; 
		System.out.print1n(a+b+c+d);//Long
		System.out.println(b+c+d);//Int
		System.out.println((c+d));//Int
	}
}

% 运算符

int a=10;
int b=20;
int c=22;
//取余,模运算
System.out.print1n(c%a) //c/a 22/10=2...2
//结果为2

++ – 自增自减运算符

和C一样

//++--自增,自减一元运算符
int a=3;
int b=a++;//执行完这行代码后,先b赋值,再自增
int c=++a;//执行完这行代码前,先自增,再给b赋值

Math类

//幂运算 2^3 2*2*2=8 很多运算,我们会使用一些工具类来操作!
double pow=Math.pow(32);
System.out.println(pow);

关系运算符

package operator;;

public class Demoe3{
	public static void main(String[] args){
		//关系运算符返回的结果:正确,错误布尔值
		//if 
		int a=10;
		int b=20;
		System.out.println(a>b);//false
		System.out.println(a<b);//true
		System.out.println(a==b);//false
		System.out.println(a!=b);//true
	}
}

其余的运算符和C一样,太基础,不记了(主要是懒)

补充一点我不会的

  • 输出语句中 + 运算符自左到右到右的结合性
//字符串连接符 +,String
int a=10;
int b=20; 
System.out.println(""+a+b);//1020
System.out.print1n(a+b+"");//30

包机制

  • 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
  • 包语句的语法格式为:
package pkg1[.pkg2[.pkg3..J];
  • 一般利用公司域名倒置作为包名;
  • 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句可完成此功能
import package1[.package2..].(classnamel*);

示例

在这里插入图片描述

package com.kuang.operator;

JavaDoc

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

参数信息

  • @author作者名
  • @version 版本号
  • @since指明需要最早使用的jdk版本
  • @param参数名
  • @return 返回值情况
  • @throws 异常抛出情况

Java API文档

网址:https://docs.oracle.com/javase/8/docs/api/
在这里插入图片描述
示例

  1. 编写以下代码
package com.kuang.base;
/**
*@author Kaungshen
*@version 1.e
*@since 1.8
*/

public class Doc{
	String name;
	/**
	*@author Kaungshen
	*@param name
	*@return
	*@throws Exception
	*/
 	public string test(String name)throws Exception{
		return name;
	}	
}
  1. 进入cmd下的包的路径之下
    在这里插入图片描述
  2. 输入以下代码,中间的代码表示兼容中文,最后的文件名不用加包路径
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 打开生成的文件夹,打开index.html网页
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

也可以使用IDEA直接生成

课程来源于B站遇见狂神话说Java系列,推荐学习

看到我的博客,你一定是一个爱学习的孩子,期待你的点赞关注!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值