【Java基础】注释、标识符、关键字、数据类型、常量、变量、运算符、包、JavaDoc

Hello World!

package org.example;//包名

/**
 * Hello world!
 *
 */
public class App 
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
    }
}

注释

//单行注释
//和C语言一样
/*
多
行
注
释
 */
 
 /** 文档注释,按 /** + 回车
 *  里面可以加一些参数
 * @Description Hello
 * @Author sslm
 *
 */

标识符和关键字

标识符

类名、变量名以及方法名都被称为标识符
类名:如上面hello world程序中,App就是类名
变量名:如 int a = 1;a就是变量名
方法名:如上面程序中的main

●所有的标识符都应该以字母(A-Z或者a-z),美元符、或者下划线开始
●首字符,之后可以是字母(A-Z或者a-z),美元符、下划线或数字的任何字符组合
●不能使用关键字作为变量名或方法名。
●标识符是大小写敏感的
●可以使用中文命名,但是一般不建议这样去使用

关键字

private 一种访问控制方式:私用模式
protected 一种访问控制方式:保护模式
public 一种访问控制方式:共用模式
abstract 表明类或者成员方法具有抽象属性
new 用来创建新实例对象
static 表明具有静态属性
class
extends 表明一个类型是另一个类型的子类型,这里常见的类型有类和接口
final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变
implements 表明一个类实现了给定的接口
interface 接口
break 提前跳出一个块
continue 回到一个块的开始处
return 从成员方法中返回数据
do 用在do-while循环结构中
while 用在循环结构中
if 条件语句的引导词
else 用在条件语句中,表明当条件不成立时的分支
for 一种循环结构的引导词
switch 分支语句结构的引导词
case 用在switch语句之中,表示其中的一个分支
default 默认,例如,用在switch语句中,表明一个默认的分支
try 尝试一个可能抛出异常的程序块
catch 用在异常处理中,用来捕捉异常
throw 抛出一个异常
throws 声明在当前定义的成员方法中所有需要抛出的异常
import 表明要访问指定的类或包
package
boolean 基本数据类型之一,布尔类型
byte 基本数据类型之一,字节类型
char 基本数据类型之一,字符类型
double 基本数据类型之一,双精度浮点数类型
float 基本数据类型之一,单精度浮点数类型
int 基本数据类型之一,整数类型
long 基本数据类型之一,长整数类型
short 基本数据类型之一,短整数类型
super 表明当前对象的父类型的引用或者父类型的构造方法
this 指向当前实例对象的引用
void 声明当前成员方法没有返回值
native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
synchronized 表明一段代码需要同步执行
transient 声明不用序列化的成员域
volatile 表明两个或者多个变量必须同步地发生变化
instanceof 用来测试一个对象是否是指定类型的实例对象
goto 保留关键字,没有具体含义
const 保留关键字,没有具体含义

以上关键字不能作为变量名

数据类型及类型转换

数据类型

内置数据类型
byte:8位
short:16位
int:32位
long:64位
float:32位
double:64位
boolean:1位
char:16位

数据类型默认值
byte0
short0
int0
long0L
float0.0f
double0.0d
char‘u0000’
String (or any object)null
booleanfalse

引用数据类型
在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
例如:对象、数组

类型转换

自动类型转换
必须满足转换前的数据类型的位数要低于转换后的数据类型,例如: short数据类型的位数为16位,就可以自动转换位数为32的int类型

-----------转换从低级到高级------------>byte,short,char> int> long> float> double 

1. 不能对boolean类型进行类型转换。

2. 不能把对象类型转换成不相关类的对象。

3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。

4. 转换过程中可能导致溢出或损失精度,例如:

int i =128;   
byte b = (byte)i;
因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。

5. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,例如:

(int)23.7 == 23;        
(int)-45.89f == -45

强制类型转换
条件是数据类型必须是兼容
格式:(type)value
–type是要强制类型转换后的数据类型

int i1 = 123;
byte b = (byte)i1;//强制类型转换为byte
System.out.println("int强制类型转换为byte后的值等于"+b);

结果:

int强制类型转换为byte后的值等于123

隐含强制类型转换

  1. 整数的默认类型是 int。

  2. 小数默认是 double 类型浮点型,在定义 float 类型时必须在数字后面跟上 F 或者 f。

常量、变量、作用域

常量:不能被修改,使用 final 修饰

final double PI = 3.1415927;

变量
声明变量格式:type identifier [ = value][, identifier [= value] …] ;
类变量:独立于方法之外的变量,用 static 修饰。
实例变量:独立于方法之外的变量,不过没有 static 修饰。
局部变量:类的方法中的变量。

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

局部变量:
局部变量声明在方法、构造方法或者语句块中;
局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
访问修饰符不能用于局部变量;
局部变量只在声明它的方法、构造方法或者语句块中可见;
局部变量是在栈上分配的。
局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。
实例变量:
实例变量声明在一个类中,但在方法、构造方法和语句块之外;
当一个对象被实例化之后,每个实例变量的值就跟着确定;
实例变量在对象创建的时候创建,在对象被销毁的时候销毁;
实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息;
实例变量可以声明在使用前或者使用后;
访问修饰符可以修饰实例变量;
实例变量可以直接通过变量名访问。但在静态方法以及其他类中,就应该使用完全限定名:ObejectReference.VariableName。
类变量(静态变量):
类变量也称为静态变量,在类中以 static 关键字声明,但必须在方法之外。
无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
静态变量除了被声明为常量外很少使用,静态变量是指声明为 public/private,final 和 static 类型的变量。静态变量初始化后不可改变。
静态变量储存在静态存储区。经常被声明为常量,很少单独使用 static 声明变量。
静态变量在第一次被访问时创建,在程序结束时销毁。
与实例变量具有相似的可见性。但为了对类的使用者可见,大多数静态变量声明为 public 类型。
静态变量可以在静态语句块中初始化。
静态变量可以通过:ClassName.VariableName的方式访问。
类变量被声明为 public static final 类型时,类变量名称一般建议使用大写字母。如果静态变量不是 public 和 final 类型,其命名方式与实例变量以及局部变量的命名方式一致。

运算符

算术运算符
在这里插入图片描述
自增自减运算符

前缀自增自减法(++a,–a): 先进行自增或者自减运算,再进行表达式运算。
后缀自增自减法(a++,a–): 先进行表达式运算,再进行自增或者自减运算

关系运算符
在这里插入图片描述
逻辑运算符
在这里插入图片描述

位运算符
在这里插入图片描述
赋值运算符
在这里插入图片描述
条件运算符

格式:variable x = (expression) ? value if true : value if false
b = (a == 1) ? 20 : 30;

instanceof 运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。

String name = "James";
boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真

运算符优先级
在这里插入图片描述

包机制

语法格式:

package pkg1[.pkg2[...]]

JavaDoc生成文档

用来生成自己的API文档,加在类上面就是类的注释,加在方法上面就是方法的注释。
用文档注释来写:/** + Enter

参数信息
@author 作者名
@version 版本号
@since 指明需要最早使用的jak版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值